Tiered contention multiple access (TCMA): a method for priority-based shared channel access

ABSTRACT

Quality of Service (QoS) support is provided by means of a Tiered Contention Multiple Access (TCMA) distributed medium access protocol that schedules transmission of different types of traffic based on their service quality specifications. In one embodiment, a wireless station is supplied with data from a source having a lower QoS priority QoS(A), such as file transfer data. Another wireless station is supplied with data from a source having a higher QoS priority QoS(B), such as voice and video data. Each wireless station can determine the urgency class of its pending packets according to a scheduling algorithm. For example file transfer data is assigned lower urgency class and voice and video data is assigned higher urgency class. There are several urgency classes which indicate the desired ordering. Pending packets in a given urgency class are transmitted before transmitting packets of a lower urgency class by relying on class-differentiated urgency arbitration times (UATs), which are the idle time intervals required before the random backoff counter is decreased. In another embodiment packets are reclassified in real time with a scheduling algorithm that adjusts the class assigned to packets based on observed performance parameters and according to negotiated QoS-based requirements. Further, for packets assigned the same arbitration time, additional differentiation into more urgency classes is achieved in terms of the contention resolution mechanism employed, thus yielding hybrid packet prioritization methods. An Enhanced DCF Parameter Set is contained in a control packet sent by the AP to the associated stations, which contains class differentiated parameter values necessary to support the TCMA. These parameters can be changed based on different algorithms to support call admission and flow control functions and to meet the requirements of service level agreements.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of copending U.S. patent applicationSer. No. 09/985,257 filed on Nov. 2, 2001, entitled “TIERED CONTENTIONMULTIPLE ACCESS (TCMA): A METHOD FOR PRIORITY-BASED SHARED CHANNELACCESS” (now allowed), which claims priority from U.S. ProvisionalPatent Application Nos. 60/245,186, filed Nov. 3, 2000; 60/249,254,filed Nov. 17, 2000; 60/254,544, filed Dec. 12, 2000; 60/256,337, filedDec. 19, 2000; 60/257,983, filed Dec. 27, 2000; and 60/278,744, filedMar. 27, 2001, all of which are incorporated herein by reference.

FIELD OF THE INVENTION

The invention disclosed broadly relates to telecommunications methodsand more particularly relates to Quality of Service (QoS) management inmultiple access packet networks.

BACKGROUND OF THE INVENTION

Wireless Local Area Networks (WLANs)

Wireless local area networks (WLANs) generally operate at peak speedsfrom 1 to 54 Mbps and have a typical range of 100 meters. Single-cellWireless LANs, as shown in FIG. 1A, are suitable for small single-flooroffices or stores. A station in a wireless LAN can be a personalcomputer, a bar code scanner, or other mobile or stationary device thatuses a wireless network interface card (NIC) to make the connection overthe RF link to other stations in the network. The single-cell wirelessLAN 100 of FIG. 1A provides connectivity within radio range betweenwireless stations 102, 104A, 104B, 106, and 108. Access point 108 allowsconnections via the backbone network 110 to wired network-basedresources, such as servers. A single-cell wireless LAN can typicallysupport several users and still keep network access delays at anacceptable level. Multiple-cell wireless LANs provide greater range thandoes a single-cell, by means of a set of access points and a wirednetwork backbone to interconnect a plurality of single-cell LANs.Multiple-cell wireless LANs can cover larger multiple-floor buildings. Amobile appliance (e.g., laptop computer, SmartPhone, or data collector)with the appropriate integrated chip set or a wireless network interfacecard (NIC) can roam within the coverage area while maintaining a liveconnection to the backbone network 11.

Of the multitude of wireless LAN specifications and standards, IEEE802.11 technology has emerged as a dominant force in the enterprise WLANmarket over the past years. The WiFi group, commonly known as theWireless Ethernet Compatibility Alliance (WECA) has led its development.Supporters include 3Com, Alantro Communications, Apple, Artem,Breezecom, Cabletron, Cisco (Aironet), Compaq, Dell, ELSA, Enterasys,Fujitsu, Intermec, Intel, Intersil, Lucent/Agere, MobileStar, Nokia,Samsung, ShareWave, Symbol, Telxon, WavePort and Zoom.

IEEE 802.11b is the newest 802.11 standard—finalized in September1999—which is an 11 Mbps high rate DSSS (direct sequence spreadspectrum) standard for wireless networks operating in the 2.4 GHz band.802.11b high-rate products started shipping in late 1999 Task Group E, aMAC enhancements study group recently completed a feasibility study onintegrating Quality of Service (QoS) and security into the standard.

Open Air was the first wireless LAN standard, pioneered by the WirelessInteroperability Forum (WLIF), with Proxim as its main proponent. Itemploys FHSS (frequency hopped spread spectrum) in the 2.4 GHz band. Arecent FCC ruling allowed use of 5 MHz channels, up from its previous 1MHz, in the 2.4 GHz frequency. With wideband frequency hopping (WBFH)data rates of 10 Mbps are possible.

HomeRF was designed specifically for the home networking market. As withOpen Air, WBFH permits data transmission speeds to extend to 10 Mbps (upfrom 2 Mbps), which makes HomeRF more competitive with 802.11technology. However, although HomeRF has significant backing fromProxim, Compaq, Motorola, and others.

Bluetooth is aimed at the market of low-power, short-range, wirelessconnections used for remote control, cordless voice telephonecommunications, and close-proximity synchronization communications forwireless PDAs/hand-held PCs and mobile phones. It has been confused onoccasion as a pure-play WLAN standard, which it is not.

IEEE 802.11a is the 5 GHz extension to 802.11b, will provide speeds ashigh as 54 Mbps at a range less than half of 802.11b. It will proveattractive in high traffic-density service areas, where reduction of the802.11b power (and hence range) to increase re-use is not adequate. WithQoS enhancements similar to those pursued for 802.11b presently, it willappeal especially to users familiar with the 802.11 architecture.

HiperLAN/2 is the European (and global) counterpart to the “American”802.11a standard first ratified in 1996 (as HiperLAN/1) by the EuropeanTelecommunications Standards Institute (ETSI). HiperLAN/2 has QoSfeatures.

The unveiling of 802.11g, the 22 Mbps extension to 802.11b, will givefurther life to the 2.4 GHz band in the near term, where 802.11boperates. Much like 10/100 Mbps Ethernet wired LANs, the new standardwill provide backward compatibility to 802.11b networks.

Wireless LAN specifications and standards include the IEEE 802.11Wireless LAN Standard and the HIPERLAN Type 1 and Type 2 Standards. TheIEEE 802.11 Wireless LAN Standard is published in three parts as IEEE802.11-1999; IEEE 802.11a-1999; and IEEE 802.11b-1999, which areavailable from the IEEE, Inc. web sitehttp://grouper.ieee.org/groups/802/11. An overview of the HIPERLAN Type1 principles of operation is provided in the publication HIPERLAN Type 1Standard, ETSI ETS 300 652, WA2 December 1997. An overview of theHIPERLAN Type 2 principles of operation is provided in the BroadbandRadio Access Networks (BRAN), HIPERLAN Type 2; System Overview, ETSI TR101 683 VI.I.1 (2000-02) and a more detailed specification of itsnetwork architecture is described in HIPERLAN Type 2, Data Link Control(DLC) Layer; Part 4. Extension for Home Environment, ETSI TS 101 761-4V1.2.1 (2000-12). A subset of wireless LANs is Wireless Personal AreaNetworks (PANs), of which the Bluetooth Standard is the best known. TheBluetooth Special Interest Group, Specification of the Bluetooth System,Version 1.1, Feb. 22, 2001, describes the principles of Bluetooth deviceoperation and communication protocols.

Collision Avoidance Techniques

Four general collision avoidance approaches have emerged: [1] CarrierSense Multiple Access (CSMA) [see F. Tobagi and L. Kleinrock, “PacketSwitching in Radio Channels: Part I—Carrier Sense Multiple Access Modelsand their Throughput Delay Characteristics”, IEEE Transactions onCommunications, Vol 23, No 12, Pages 1400-1416, 1975], [2] MultipleAccess Collision Avoidance (MACA) [see P. Karn, “MACA—A New ChannelAccess Protocol for Wireless Ad-Hoc Networks”, Proceedings of theARRL/CRRL Amateur Radio Ninth Computer Networking Conference, Pages134-140, 1990], [3] their combination CSMA/CA, and [4] collisionavoidance tree expansion.

CSMA allows access attempts after sensing the channel for activity.Still, simultaneous transmit attempts lead to collisions, thus renderingthe protocol unstable at high traffic loads. The protocol also suffersfrom the hidden terminal problem.

The latter problem was resolved by the MACA protocol, which involves athree-way handshake [P. Karn, supra]. The origin node sends a request tosend (RTS) notice of the impending transmission; a response is returnedby the destination if the RTS notice is received successfully; and theorigin node proceeds with the transmission. This protocol also reducesthe average delay as collisions are detected upon transmission of merelya short message, the RTS. With the length of the packet included in theRTS and echoed in the clear to send (CTS) messages, hidden terminals canavoid colliding with the transmitted message. However, this prevents theback-to-back re-transmission in case of unsuccessfully transmittedpackets. A five-way handshake MACA protocol provides notification tocompeting sources of the successful termination of the transmission.[See V. Bharghavan, A. Demers, S. Shenker, and L. Zhang, “MACAW: A mediaaccess protocol for wireless LANs”, SIGCOMM '94, Pages 212-225, ACM,1994.]

CSMA and MACA are combined in CSMA/CA, which is MACA with carriersensing, to give better performance at high loads. A four-way handshakeis employed in the basic contention-based access protocol used in theDistributed Coordination Function (DCF) of the IEEE 802.11 Standard forWireless LANs. [See IEEE Standards Department, D3, “Wireless MediumAccess Control and Physical Layer WG,” IEEE Draft Standard P802.11Wireless LAN, January 1996.]

Collisions can be avoided by splitting the contending terminals beforetransmission is attempted. In the pseudo-Bayesian control method, eachterminal determines whether it has permission to transmit using a randomnumber generator and a permission probability “p” that depends on theestimated backlog. [See R. L. Rivest, “Network control by BayesianBroadcast”, IEEE Trans. Inform. Theory, Vol IT 25, pp. 505-515,September 1979.]

To resolve collisions, subsequent transmission attempts are typicallystaggered randomly in time using the following two approaches: binarytree and binary exponential backoff.

Upon collision, the binary tree method requires the contending nodes toself-partition into two groups with specified probabilities. Thisprocess is repeated with each new collision. The order in whichcontending nodes transmit is determined either by serial or parallelresolution of the tree. [See J. L. Massey, “Collision-resolutionalgorithms and random-access communications”, in Multi-UserCommunication Systems, G. Longo (ed.), CISM Courses and Lectures No.265, New York: Springer 1982, pp. 73-137.]

In the binary exponential backoff approach, a backoff counter tracks thenumber of idle time slots before a node with pending packets attempts toseize the channel. A contending node initializes its backoff counter bydrawing a random value, given the backoff window size. Each time slotthe channel is found idle, the backoff counter is decreased by 1 andtransmission is attempted upon expiration of the backoff counter. Thewindow size is doubled every time a collision occurs, and the backoffcountdown starts again. [See A. Tanenbaum, Computer Networks, 3^(rd)ed., Upper Saddle River, N.J., Prentice Hall, 1996.] The DistributedCoordination Function (DCF) of the IEEE 802.11 Standard for WirelessLANs employs a variant of this contention resolution scheme, a truncatedbinary exponential backoff, starting at a specified window and allowingup to a maximum backoff range below which transmission is attempted.[IEEE Standards Department, D3, supra] Different backoff counters may bemaintained by a contending node for traffic to specific destinations.[Bharghavan, supra]

In the IEEE 802.11 Standard, the channel is shared by a centralizedaccess protocol—the Point Coordination Function (PCF)—which providescontention-free transfer based on a polling scheme controlled by theaccess point (AP) of a basic service set (BSS). [IEEE StandardsDepartment, D3, supra] The centralized access protocol gains control ofthe channel and maintains control for the entire contention-free periodby waiting a shorter time between transmissions than the stations usingthe Distributed Coordination Function (DCF) access procedure.

IEEE 802.11 Wireless LAN Overview

The IEEE 802.11 Wireless LAN Standard defines at least two differentphysical (PHY) specifications and one common medium access control (MAC)specification. The IEEE 802.11(a) Standard is designed to operate inunlicensed portions of the radio spectrum, usually the 5 GHzUnlicensed-National Information Infrastructure (U-NII) band. It usesorthogonal frequency division multiplexing (OFDM) to deliver up to 54Mbps data rates. The IEEE 802.11(b) Standard is designed for the 2.4 GHzISM band and uses direct sequence spread spectrum (DSSS) to deliver upto 11 Mbps data rates.

802.11 Architecture Components

The IEEE 802.11 Wireless LAN Standard describes the followingcomponents. The station (STA) is any wireless device with conformant802.11 interfaces to the wireless medium. A Basic Service Set (BSS)consists of two or more wireless nodes, or STAs, which have recognizedeach other and have established communications. In the most basic form,stations communicate directly with each other on a peer-to-peer level.When stations can communicate only among themselves, we say we have anIndependent Basic Service Set (IBSS). This type of arrangement iscommonly referred to as an ad hoc network. It is often formed on atemporary basis. BSSs can communicate with one another and with othernetworks. The distribution system (DS) integrates different BSS into anetwork; it may take any form, but it is typically a wired LAN. Itprovides address mapping. In most instances, the BSS contains an AccessPoint (AP). The AP is a station. The main function of an AP is toprovide access to the distribution system. All communications betweenstations or between a station and a wired network client go through theAP. The AP is analogous to a base station used in cellular phonenetworks. AP's are not mobile, and form part of the wired networkinfrastructure. When an AP is present, stations do not communicate on apeer-to-peer basis. A multiple-cell wireless LAN using the IEEE 802.11Wireless LAN Standard is an Extended Service Set (ESS) network. An ESSsatisfies the needs of large coverage networks of arbitrary size andcomplexity. FIG. 1A illustrates the components of a WLAN.

Because of the way BSSs are set up in a plug-and-play manner, it is notuncommon for the coverage areas of two distinct BSSs to overlap.

802.11 MAC Functions

The purpose of the MAC protocol is to provide for the delivery of userdata; fair access control; and privacy. Each wireless station and accesspoint in an IEEE 802.11 wireless LAN implements the MAC layer service,which provides the capability for wireless stations to exchange MACframes. The MAC frame transmits management, control, or data betweenwireless stations and access points. After a station forms theapplicable MAC frame, the frame's bits are passed to the Physical Layerfor transmission. The same MAC protocol serves all PHY specifications.

In the IEEE 802.11 Standard, the channel is shared through two accessmechanisms: DCF and PCF. The distributed coordination function (DCF) isthe basic media access control method for 802.11. It is mandatory forall stations. It is based on contention.

The point coordination function (PCF) is an optional extension to DCF.It is a contention-free centralized access protocol, especially usefulfor periodic time-sensitive services like cordless telephony. It isbased on a polling scheme controlled by the access point (AP) of a basicservice set. The centralized access protocol gains control of thechannel and maintains control for the entire contention-free period bywaiting a shorter time between transmissions than the stations using theDCF access procedure.

DCF Access Mechanism

The distributed coordination function (DCF) is the basic access methodin 802.11 LANs. The PCF employs the DCF access mechanism to gain controlof the channel. DCF uses Carrier Sense Multiple Access/CollisionAvoidance (CSMA/CA). This requires each station to listen for otherusers and if busy postpone transmission by a random delay, known asbackoff.

The backoff procedure in DCF relies on the ability of every station to‘hear’ all other stations. But this is not always the case. It ispossible for a station unable to hear the source of a transmission tointerfere with the receipt of that transmission. This is known as the‘hidden node’ problem. The RTS/CTS exchange can be used to combat thisproblem. RTS/CTS is also a mechanism for reserving the channel forpoint-to-point transmissions; it involves the exchange of messagesbetween the origin and destination.

The source of the transmission sends an RTS frame, which may, or maynot, be heard by a hidden node. The RTS frame contains a ‘duration’field that specifies the period of time for which the medium isreserved. The NAV of a STA is set by the duration field. The NAV is setby all stations detecting the RTS frame. Nodes other than thedestination set the NAV at this value and refrain from accessing themedium until the NVA expires. Upon receipt of the RTS, the destinationnode responds with a CTS frame. It, too, contains a ‘duration’ fieldspecifying the remaining period of time for which the medium isreserved. A station within interfering range from the destination, whichmay not hear the RTS, will detect the CTS and update its NAVaccordingly. The NAV provides protection through the ACK. The NAV servesas a ‘virtual’ carrier sense mechanism. Thus, collision is avoided eventhough some stations are hidden from others.

The RTS/CTS procedure is invoked optionally. As a channel reservationmechanism, the RTS/CTS exchange is efficient only for longer framesbecause of the extra overhead involved.

In order to increase the probability of successful transfer across themedium, frames are fragmented into smaller ones. A MAC service data unit(MSDU) is partitioned into a sequence of smaller MAC protocol data unitsprior to transmission. DCF transmits MSDUs as independent entities, thusproviding best-effort connectionless user data transport.

DCF Backoff Procedure

If the channel has been idle for a time period of length DIFS (definedbelow) when a new frame arrives, the station may transmit immediately.However, if it is busy, each station waits until transmission stops, andthen enters into a random backoff procedure. Deferring transmission by arandom delay tends to prevent multiple stations from seizing the mediumimmediately after a preceding transmission completes. A backoff delay ischosen randomly from a range of integers known as the contention window.This delay measures the total idle time for which a transmission isdeferred. It is expressed in units of time slots.

The CSMA/CA protocol minimizes the chance of collisions between stationssharing the medium, by waiting a random backoff interval 128A or 128B ofFIG. 1C, if the station's sensing mechanism indicates a busy medium whena frame arrives. The period of time immediately following completion ofthe transmission is when the highest probability of collisions occurs,as all stations with newly arrived frames will attempt to transmit. Forexample, stations 102, 104B, and 106 may be waiting for the medium tobecome idle while station 104A is transmitting, and stations 102, 104B,and 106 will attempt to transmit at the same time, once station 104Astops. Once the medium is idle, CSMA/CA protocol causes each station todelay its transmission by a random backoff time. For example, station104B delays its transmission by a random backoff time 128B, which defersstation 104B from transmitting its frame 124B, thereby minimizing thechance it will collide with those from other stations 102 and 106, whichhave also selected their backoff times randomly.

As shown in FIG. 1D, the CSMA/CA protocol computes the random backofftime 128B of station 104B as the product of a constant, the slot time,times a pseudo-random number RN which has a range of values from zero toa contention window CW. The value of the contention window for the firsttry to access the network by station 104B is CW1, which yields the firsttry random backoff time 128B.

Backoff Countdown

An internal timer is set to the selected backoff delay. The timer isreduced by 1 for every time slot the medium remains idle. Backoffcountdown is interrupted when the medium becomes busy. The timer settingis retained at the current reduced value for subsequent countdown.Backoff countdown may start or resume following a busy channel periodonly if the channel has been idle for time interval of length equal toDIFS. If the timer reaches zero, the station may begin transmission. Thebackoff procedure is illustrated in FIG. 1.

When a collision occurs, retransmission is attempted using binaryexponential backoff, which refers to the process of increasing the rangefrom which another backoff delay is drawn randomly. The contentionwindow size is doubled with every transmission retry. This serves as agood mechanism for adapting to congestion because collisions are aresult of congestion; with congestion a wider window is desirable. Inthe example in FIG. 1D, if the first try to access the network bystation 104B fails, then the CSMA/CA protocol computes a new CW bydoubling the current value of CW as CW2=CW1 times 2. As shown in FIG.1D, the value of the contention window for the second try to access thenetwork by station 104B is CW2, which yields the second try randombackoff time 128B′. Binary exponential backoff provides a means ofadapting the window size to the traffic load. Stations are not forced towait very long before transmitting their frame in low traffic load. Onthe first or second attempt, a station will make a successfultransmission. However, if the traffic load is high, the CSMA/CA protocoldelays stations for longer periods to avoid the chance of multiplestations transmitting at the same time. If the second try to access thenetwork by station 104B fails, then the CSMA/CA protocol computes a newCW by doubling again the current value of CW as CW3=CW1 times 4. Asshown in FIG. 1D, the value of the contention window for the third tryto access the network by station 104B is CW3, which yields the third tryrandom backoff time 128B″. The value of CW increases to relatively highvalues after successive retransmissions, under high traffic loads. Thisprovides greater transmission spacing between stations waiting totransmit.

Inter-Frame Spaces

In addition to contending stations, the channel is accessed also by thePCF, and by other frames without contention. To prioritize transmissionsor remove contention, special idle spaces are defined, the IFS (-InterFrame Space), which are idle spaces required between frames. They areillustrated in FIG. 1B. Each interval defines the duration from the endof the last symbol of the previous frame 113 at time T1, to thebeginning of the first symbol of the next frame. They are the following:The Short Interframe Space (SIFS) 115 allows some frames to access themedium without contention, such as an Acknowledgement (ACK) frame, aClear to Send (CTS) frame, or a subsequent fragment burst of a previousdata frame. These frames require expedited access to the channel. At anypoint in time there is a single frame needing transmission within thisgroup, and if transmitted within a SIFS period, there will be nocontention.

The PCF inter-frame space, PIFS, is next; it is used by the PCF toaccess the medium in order to establish a contention-free period. Acontention-free period may be started before a DCF transmission canaccess the channel because PIFS is shorter than DIFS. The PriorityInterframe Space 117 of FIG. 1B is used by the PCF to access the mediumin order to establish contention-free period 116 starting at T2 andending at T3. The point coordinator 105 in the access point 108connected to backbone network 110 in FIG. 1A controls the priority-basedPoint Coordination Function (PCF) to dictate which stations in cell 100can gain access to the medium. During the contention-free period 116,station 102 in FIG. 1A, for example, is directed by the access point 108to transmit its data frame 122. The point coordinator 105 in the accesspoint 108 sends a contention-free poll frame 120 to station 102,granting station 102 permission to transmit a single frame. Allstations, such as stations 104A, 104B, and 106, in the cell 100 can onlytransmit during contention-free period 116 when the point coordinatorgrants them access to the medium. In this example, stations 104A and104B, which have data sources 114A and 114B, must wait until the end ofthe contention-free period 116 at T3. This is signaled by thecontention-free end frame 126 sent by the point coordinator in FIG. 1C.The contention-free end frame 126 is sent to identify the end of thecontention-free period 116, which occurs when time expires or when thepoint coordinator has no further frames to transmit and no stations topoll.

DIFS (DCF inter-frame space) is the longest of the three. Transmissionsother than ACKs must wait at least one DIFS before commencing. Acontention-free session can be started by the PCF before a DCFtransmission because DIFS is longer than PIFS. Upon expiration of aDIFS, the backoff timer begins to decrement. The distributedcoordination function (DCF) Interframe Space 119 of FIG. 1B is used bystations 104A and 104B, for example, for transmitting data frames 124Aand 124B, respectively, during the contention-based period 118. The DIFSspacing permits the PC of neighboring cells to access the channel beforea DCF transmission by delaying the transmission of frames 124A and 124Bto occur between T3 and T4An Extended Interframe Space (EWFS) (notshown) goes beyond the time of a DIFS interval as a waiting period whena bad reception occurs. The EIFS interval provides enough time for thereceiving station to send an acknowledgment (ACK) frame.

PCF Access Mechanism

The Point Coordination Function (PCF) is an optional extension to DCF.In a single BSS, PCF provides contention-free access to accommodate timebounded, connection-oriented services such as cordless telephony. PCFinvolves a point coordinator (PC), which operates at the access point ofthe BSS. It employs contention-free polling. The PC gains control of themedium at regular time intervals through the DCF CSMA/CA protocol usingPIFS for access priority over DCF transmissions. The PC also distributesinformation relevant to the PCF within Beacon Management frames.

The transmissions coordinated under the PCF experience no contentionbecause control of the channel is maintained through the use of IFSspaces shorter than or equal to PIFS. That is, all frame transmissionsunder the point coordination function may use an IFS that is smallerthan DIFS, the IFS used for DCF transmissions. Point-coordinated trafficis also protected this way from contention with DCF transmissions inoverlapping BSSs that operate on the same channel. The contention-freeperiod is also protected by setting the network allocation vector (NAV)in stations.

The PC determines which station transmits when. First, the AP deliversbroadcast data. Then, the PC polls STAs on the polling list to sendtheir data. In order to use the channel efficiently, piggybacking ofdifferent types of frames, like data frames, ACKs and polls, ispossible. For example, a PC data frame can be combined with a poll to astation. STA data frames can be combined with an ACK. A PC can combinean ACK to one station with data and a poll to another. One frame istransmitted per poll by a polled STA.

Stations are placed on the polling list when they associate orre-associate with a BSS, at their discretion. A station may opt not tobe polled in order to save power.

Multi-BSS Environment

A BSS is an equivalent to a cell in a cellular system; the AP isequivalent to the base station. When multiple WLANs operate in the samephysical space, they share the same wireless spectrum. Coordination ofwireless spectrum use in multi-BSS systems is thus comparable to RFplanning in a cellular system. But unlike in cellular systems, the RFplanning problem in WLANs is made more difficult by the location of theAPs. They are not placed on a regular hexagonal grid. When WLANs areinstalled in multi-tenant office buildings and multiple-unit dwellings,owners simply plug in their AP and start up their LAN. No attention ispaid to who else is operating a WLAN nearby. The result is overlappingcell coverage.

Overlapping cells will offer new challenges with the proliferation ofWLANs. If there are several PCs attempting to establish contention-freeperiods (CFPs), they must coordinate their access. Special mechanismsare thus needed to enable multiple PCs to coordinate use of the channelunder PCF and provide CFPs for their respective BSS. The currentstandard does not provide adequate coordination for the operation of thePCF in cases where multiple BSSs are operating on the same channel, inoverlapping physical space. New protocols are needed. A completeprotocol suite for this purpose has not yet been presented. A BSSoperates on a single channel, while several channels are availablewithin each of the bands. There are 3 channels in the 2.4 GHz band and 8in the 5 GHz band. Once a channel has been assigned, channel time can beshared by using a dynamic bandwidth allocation methods.

The similarity of multi-BSS systems with cellular systems can beexploited in channel assignment only when a single service providermanages all WLANs in a given physical space. Then regular re-use RFplanning methods, apply. A re-use factor N=8 can be employed, seeBenveniste U.S. Pat. No. 5,740,536. However, repeating assignment of thesame channel by a tessellation cannot be used with WLANs whose locationsare chosen in an ad hoc manner and may involve even co-located BSSs.Non-regular channel assignment would need to be deployed; it assignschannels optimally, while respecting the interference experiencedbetween BSSs when assigned the same channel—see Benveniste U.S. Pat. No.5,404,574.

Channel assignment must be adaptive. That is, they should be revisedoccasionally as the spatial distribution of powered stations changesover time; as different stations are powered on or off at differenttimes, or users are entering and leaving the BSSs. A channel selectedupon installation of a station may not be suitable at some future time.While channel selections must be revisited occasionally, dynamic (frameby frame) channel assignment is not feasible as the assigned channelprovides control, in addition to data transport.

Self-configuration, which involves stations taking signal-strengthmeasurements to determine during a system operation the interferencerelationships between BSSs can be employed for adaptive channelassignment—see Benveniste U.S. Pat. No. 6,112,092.

Quality Of Service (QoS)

Quality of service (QoS) is a measure of service quality provided to acustomer. The primary measures of QoS are message loss, message delay,and network availability. Voice and video applications have the mostrigorous delay and loss requirements. Interactive data applications suchas Web browsing have less restrained delay and loss requirements, butthey are sensitive to errors. Non-real-time applications such as filetransfer, Email, and data backup operate acceptably across a wide rangeof loss rates and delay. Some applications require a minimum amount ofcapacity to operate at all, for example, voice and video. Many networkproviders guarantee specific QoS and capacity levels through the use ofService-Level Agreements (SLAs). An SLA is a contract between anenterprise user and a network provider that specifies the capacity to beprovided between points in the network that must be delivered with aspecified QoS. If the network provider fails to meet the terms of theSLA, then the user may be entitled to a refund. The SLA is typicallyoffered by network providers for private line, frame relay, ATM, orInternet networks employed by enterprises.

The transmission of time-sensitive and data application traffic over apacket network imposes requirements on the delay or delay jitter and theerror rates realized; these parameters are referred to generically asthe QoS (Quality of Service) parameters. Prioritized packet scheduling,preferential packet dropping, and bandwidth allocation are among thetechniques available at the various nodes of the network, includingaccess points, that enable packets from different applications to betreated differently, helping achieve the different quality of serviceobjectives. Such techniques exist in centralized and distributedvariations. The concern herein is with distributed mechanisms formultiple access in a variety of networks, such as cellular packetnetworks or wireless ad hoc networks. For example, when engaged indynamic packet assignment in a cellular type of network, the basestations contend among themselves for a channel to be used within theirrespective cells. Although the channel may be used by the mobile stationfor an up-link transmission, the serving base station is the onecontending. [patent application #113006, M. Benveniste, “AsymmetricMeasurement-Based Dynamic Packet Assignment system And Method ForWireless Data Services”, filed on Mar. 22, 2001,] In an ad hoc type ofnetwork, individual stations contend for the use of a channel.

Management of contention for the shared transmission medium must reflectthe goals sought for the performance of the system overall. Forinstance, one such goal would be the maximization of goodput (the amountof good data transmitted as a fraction of the channel capacity) for theentire system, or of the utilization efficiency of the RF spectrum;another is the minimization of the worst-case delay. As multiple typesof traffic with different performance requirements are combined intopacket streams that compete for the same transmission medium, amulti-objective optimization is required.

QoS enhancements are necessary in order to facilitate streaming of voiceand multimedia traffic together with data. The high error ratesexperienced in transmitting over a wireless medium can lead to delaysand jitter that are unacceptable for such traffic. More delay is addedby acknowledgements that become necessary for wireless transmissions,and by the RTS/CTS mechanism if used.

Ideally, one would want a multiple access protocol that is capable ofeffecting packet transmission scheduling as close to the optimalscheduling as possible but with distributed control. Distributed controlimplies both limited knowledge of the attributes of the competing packetsources and limited control mechanisms.

To apply any scheduling algorithm in random multiple access, a mechanismmust exist that imposes an order in which packets will seize the medium.For distributed control, this ordering must be achieved independently,without any prompting or coordination from a control node. Only if thereis a reasonable likelihood that packet transmissions will be orderedaccording to the scheduling algorithm can one expect that thealgorithm's proclaimed objective will be attained.

What is needed is a distributed medium access protocol that schedulestransmission of different types of traffic based on their servicequality specifications. Depending on these specifications, one suchscheduling algorithm would be to assign packets from applications withdifferent service quality specifications different priorities. Higherpriority packets would be given preference over lower priority ones incongestion conditions. But in general, it is not desirable to postponetransmission of lower priority packets merely because there are higherpriority packets are queued for transmission. The latter would penalizethe lower priority traffic classes excessively.

SUMMARY OF THE INVENTION

In accordance with the invention, Quality of Service (QoS) support isprovided by means of the Tiered Contention Multiple Access (TCMA)distributed medium access protocol that schedules transmission ofdifferent types of traffic based on their service qualityspecifications.

The TCMA protocol assigns the urgency arbitration time (UAT) of eachdata packet as a function of the QoS requirement of the data packet. Forexample, file transfer data with a lower QoS priority will be assigned alonger urgency arbitration time of UAT(A) and voice and video data witha higher QoS priority will be assigned a shorter urgency arbitrationtime of UAT(B). TCMA minimizes the chance of collisions between wirelessstations sharing the medium, while giving preference to those packets inhigher urgency classes. In congestion conditions, prioritydifferentiation by UAT offers not only prioritized access to packetsready for transmission, but also freezing of the backoff countdownprocess of lower priority packets. This is what helps higher prioritypackets to access the channel more readily in a minimally disruptiveway, thus resulting in lower delays.

In one embodiment, a wireless station is supplied with data from asource having a lower delay limit QoS(A), such as file transfer data.Another wireless station is supplied with data from a source having alonger delay limit QoS(B), such as voice and video data. Each wirelessstation can determine the urgency class of its application packetsaccording to a scheduling algorithm. For example, file transfer data isassigned lower urgency class and voice and video data is assigned higherurgency class. There are several urgency classes which indicate thedesired ordering. Packets ready for transmission [packets with expiredbackoff timer] in a given urgency class are transmitted beforetransmitting packets of a lower urgency class by relying onclass-differentiated urgency arbitration times (UATs), which are theidle time intervals required before the random backoff counter isdecreased. The TCMA protocol assigns the urgency arbitration time (UAT)of each packet as a function of the QoS priority of the data packet. Forexample, file transfer data with a lower QoS priority will be assigned alonger urgency arbitration time of UAT(A) and voice and video data witha higher QoS priority will be assigned a shorter urgency arbitrationtime of UAT(B).

In general, there are two channel idle times involved in backoffcountdown of CSMA/CA. Depending on the backoff countdown procedureemployed, prioritization can be achieved through variation by urgencyclass of either of the two idle-time requirements or both of themtogether. For backoff countdown to start, the channel must be idlefollowing a busy time period for a time interval referred to as thebackoff-counter preparation time (BCPT). The backoff counter is thendecreased if the channel remains idle for a specified time interval,which is referred to as the backoff-counter update time (BCUT). In theIEEE 802.11 Standard, BCPT is equal to DIFS, and BCUT is equal to theslot time.

Consider the case where the BCPT is used as the UAT. Each urgency classhas a corresponding urgency arbitration time (UAT) during which thechannel must remain idle before starting the backoff interval forpackets assigned to that urgency class. For example, the urgencyarbitration time UAT(A) for a less urgent class “A” and the urgencyarbitration time UAT(B) for a more urgent class B”. The urgencyarbitration time UAT(B) for the more urgent class “B” is shorter. Theurgency arbitration time UAT(A) for a less urgent class “A” is longerSuppose the channel is idle. At the end of the shorter urgencyarbitration time UAT(B) for the more urgent class “B”, the randombackoff begins to count down for all of the packets assigned to the moreurgent class “B”. When it reaches zero, and the station's sensingmechanism indicates the medium is still not busy, then the packet istransmitted. The same operation of counting down respective randombackoff intervals is repeated for other packets assigned to the moreurgent class “B”, until they are all transmitted or until they time out.

The urgency arbitration time UAT(A) for the less urgent class “A” islonger. Assuming that the channel remains idle at the end of the longerurgency arbitration time UAT(A) for the less urgent class “A”, therandom backoff delay begins to count down for all of the packetsassigned to the less urgent class “A”. Countdown is interrupted when thechannel gets busy, and the station must wait for an idle period equal toits urgency arbitration time before it resumes countdown again. If thebackoff delay of a node assigned the more urgent class “B” is 1following a busy period, the countdown of the less urgent class “A” willnot get started.

Further in accordance with the invention, the value of the randombackoff interval is selected randomly from a statistical distribution,whose mean and variance are set adaptively in response to the observedtraffic intensity. The parameters of this distribution may be used tofurther differentiate between urgency classes. When the random backoffis drawn from a uniform statistical distribution, the range of thebackoff is calculated based on a contention window range CW(A) which hasan initial lower value L(A) and an initial upper value U(A), which arefunctions of the urgency class.

Further in accordance with the invention, the random backoff interval iscalculated based on a contention window range CW(A) which has an initiallower value L(A) and an initial upper value U(A), which are functions ofthe urgency class. The value of the random backoff interval is selectedrandomly from a statistical distribution, whose mean and variance areset adaptively in response to the observed traffic intensity.

Still further in accordance with the invention, several input parametersprovide differentiation between different urgency class transmissions.Differentiation between different urgency class transmissions isachieved through the use of class-specific urgency arbitration times(UATs). The arbitration time is the time interval that the channel mustbe sensed idle by a node before decreasing its backoff counter.Differentiation between different urgency class transmissions isachieved through the use of class-specific parameters of the probabilitydistribution used to generate random backoff times and class-specificbackoff retry adjustment functions. The backoff time is drawn from auniform random distribution. The backoff retry parameters determine howthe backoff distribution parameters are adjusted on successive retriesfollowing transmission failure. Differentiation between differenturgency class transmissions is achieved through the use ofclass-specific packet age limits. The age limits lead to thecancellation of a transmission if the time since arrival exceeds athreshold value. Differentiation between different urgency classtransmissions is achieved through the use of a persistence factor,pf_(i), that is different for each class i, which is used to multiplythe backoff window from which backoff counters will be drawn randomlyupon transmission retrial.

Still further in accordance with the invention, a new backoff range isdetermined by functions that depend on the packet's class, the trafficcongestion estimates, and on the time spent by the packet waiting fortransmission. Congestion estimates are derived from data that include:feedback on the success or failure of a transmission attempt, the numberof re-transmissions attempted by a node and by each of its neighbornodes and from the age of such retrials. A separate number oftransmission attempts is remembered or broadcast for each urgency class;and congestion is thus estimated for each urgency class. This is madepossible through the introduction of new fields in all reservationmessages, including request to send (RTS) and clear to send (CTS), aswell as headers of transmitted packets. The fields indicate the numberof transmission attempts.

Still further in accordance with the invention, Tiered ContentionMultiple Access (TCMA) enables the co-existence of centralized anddistributed access protocols on the same channel throughcontention-based access. To make this possible, the proper choice of anarbitration time for the centralized protocol is made so that thefollowing requirements are met: (i) the centralized protocol enjoys toppriority access; (ii) once the centralized protocol seizes the channel,it maintains control until the contention-free period is ended; and(iii) then wireless stations having at least one traffic class withaccess priority above that of legacy stations can employ the TCMAprotocol to transmit their respective urgency classes of data.

The resulting invention provides a distributed medium access protocolthat schedules transmission of different types of traffic based on theirservice quality specifications. Network providers can offer servicesdefined in terms of any or all of the parameters proposed for trafficclass differentiation. The parameter values associated with each classcan be set in real time through the AP for flow control in order to meetService-Level Agreements.

An Enhanced DCF Parameter Set is contained in a control packet sent bythe AP to the associated stations, which contains class differentiatedparameter values necessary to support the TCMA. These parameters can bechanged based on different algorithms to support call admission and flowcontrol functions and to meet the requirements of service levelagreements.

DESCRIPTION OF THE FIGURES

FIG. 1 illustrates the backoff procedure.

FIG. 1A is a network diagram of a prior art single-cell wireless LAN,operating with the CSMA/CA protocol.

FIG. 1B is a timing diagram of the prior art CSMA/CA protocol operatingin FIG. 1A.

FIG. 1C is a more detailed timing diagram of the prior art CSMA/CAprotocol of FIG. 1B.

FIG. 1D Illustrates the prior art technique for computing the randombackoff interval in the CSMA/CA protocol of FIG. 1C.

FIG. 2A is a network diagram of a single-cell wireless LAN 200 and twostations transmitting data with different QoS priorities, operating withthe Tiered Contention Multiple access TCMA protocol, in accordance withthe invention.

FIG. 2B is a timing diagram of the TCMA protocol operating in FIG. 2A,in accordance with the invention.

FIG. 2C is a more detailed timing diagram of the TCMA protocol of FIG.2B, in accordance with the invention.

FIG. 2D illustrates the technique for computing urgency arbitration timeUAT(A) and the contention window range CW(A) as a function of a lowerquality of service requirement QOS(A) in the TCMA protocol of FIG. 2C,in accordance with the invention.

FIG. 2E illustrates the technique for computing urgency arbitration timeUAT(B) and the contention window range CW(B) as a function of a higherquality of service requirement QOS(B) in the TCMA protocol of FIG. 2C,in accordance with the invention.

FIG. 2F is a network diagram of a single-cell wireless LAN 200′ andthree stations transmitting data with two different QoS priorities,operating with the Tiered Contention Multiple access TCMA protocol, inaccordance with the invention.

FIG. 2G is a timing diagram of the TCMA protocol, operating in FIG. 2F,in accordance with the invention.

FIG. 2H is a network diagram of a single-cell wireless LAN 200″ and onestation transmitting data with two different QoS priorities, operatingwith the Tiered Contention Multiple access TCMA protocol, in accordancewith the invention.

FIG. 2I is a timing diagram of the TCMA protocol, operating in FIG. 2H,in accordance with the invention.

FIG. 3 is a functional block diagram of the TCMA urgency classprocessing based on QoS priorities of data for two urgency classes inthe wireless station 204D.

FIG. 4 is a more detailed functional block diagram of the TCMA urgencyclass processing based and the resulting ordering of the transmission ofdata packets for three urgency classes. The urgency class processing canbe in a single wireless station with three different urgency classes orit can be distributed in multiple wireless stations, each with from oneto three urgency classes.

FIG. 5A is a more detailed functional block diagram of the TCMA urgencyclass processing of FIG. 4, showing several input parameters thatprovide differentiation between different urgency class transmissionsfor the medium urgency class for a first try backoff range L_2,U_2.

FIG. 5B is the same as FIG. 5A, but shows the resulting ordering of thetransmission of data packets for the medium urgency class for a secondtry backoff range L_2′,U_2′.

FIG. 6 is a message format diagram of a message, such as a request tosend (RTS) and clear to send (CTS), or a header of transmitted packet,indicating the number of transmission attempts. Congestion is estimatedfor each urgency class through the introduction of this message format.

FIG. 7A is a network diagram of a multiple-cell wireless LAN with twoaccess points operating with the Tiered Contention Multiple access TCMAprotocol, in accordance with the invention.

FIG. 7B is a timing diagram of the TCMA protocol, in accordance with theinvention, operating in FIG. 7A.

FIG. 8 is a timing diagram of priority differentiation by arbitrationtime.

FIG. 9 is a graph of calls versus time illustrating a simulation of theperformance of TCMA.

FIGS. 10A-10D illustrate the average delay by traffic category for DCFand for TCMA.

FIGS. 10E-10H illustrate delay and jitter for a single call for DCF andfor TCMA.

FIGS. 11A-11F illustrate the average delay by traffic category for DCF,TCMA, and TCMA with persistence factors.

FIGS. 12A-12F illustrate delay and jitter for a single call for DCF,TCMA, and TCMA with persistence factors.

FIGS. 13A and 13B illustrate obsolete frames.

FIGS. 13C and 13D illustrate delay and jitter for a single call.

FIGS. 13A and 13C illustrate the operation without dropping delayedframes whereas FIGS. 13B and 13D illustrate the operation for droppingvoice frames with MSDU lifetime>20 ms.

DISCUSSION OF THE PREFERRED EMBODIMENT

FIG. 2A is a network diagram of a single-cell wireless LAN 200,operating with the Tiered Contention Multiple Access (TCMA) protocol, inaccordance with the invention. The single-cell wireless LAN 200 providesconnectivity within radio range between wireless stations 202, 204A,204B, 206, and 208. Access point 208 is a wireless station that allowsconnections via the backbone network 210 to wired network-basedresources, such as servers. Station 204A is supplied with data from afile transfer data source 214A, which has a lower QoS priority QoS(A).Non-real-time applications such as file transfer, Email, and data backupcan tolerate greater delay. Station 204B is supplied with voice andvideo data from data source 214B, which has a higher QoS priorityQoS(B). Voice and video applications have the most rigorous delay andloss requirements.

Before transmitting a frame, the medium access control (MAC) layer mustfirst gain access to the network. FIG. 2B shows three interframe space(IFS) intervals that defer a station's access to the medium and providesvarious levels of priority. Each interval defines the duration betweenthe end of the last symbol of the previous frame 213 at time T1 to thebeginning of the first symbol of the next frame at T2. The ShortInterframe Space (SIFS) 215 provides the highest priority level byallowing some frames to access the medium before others.

The Priority Interframe Space (PIFS) 217 of FIG. 2B is used for highpriority access to the medium during the contention-free period 216starting at T2 and ending at T3. The point coordinator 205 in the accesspoint 208 connected to backbone network 210 in FIG. 2A controls thepriority-based Point Coordination Function (PCF) to dictate whichstations in cell 200 can gain access to the medium. During thecontention-free period 216, station 202 in FIG. 2A, for example, isdirected by the access point 208 to transmit its high priority dataframe 222. The point coordinator 205 in the access point 208 sends acontention-free poll frame 220 to station 202, granting station 202permission to transmit a single frame to any destination. Station 202wants to transmit its high priority data frame 222 to the receivingstation 206. Station 202 can transmit its frame 222 during period 216 ifit senses that the medium is idle. All other stations, such as stations204A, 204B, and 206, in the cell 200 can only transmit duringcontention-free period 216 if the point coordinator 205 grants themaccess to the medium. In this example, stations 204A and 204B have datasources 214A and 214B which are lower priority than the high prioritydata frame 222, and thus they must wait until the end of thecontention-free period 216 at T3. This is signaled by thecontention-free end frame 226 sent by the point coordinator 205, in FIG.2C. The contention-free end frame 226 is sent to identify the end of thecontention-free period 216, which occurs when time expires or when thepoint coordinator 205 has no further frames to transmit and no stationsto poll.

The distributed coordination function (DCF) Interframe Space (DIFS) 219of FIG. 2B is used by stations 204A and 204B, for example, fortransmitting data frames 224A and 224B, respectively, during the tieredcontention multiple access (TCMA) period 218. The DIFS spacing delaysthe transmission of frames 224A and 224B to occur between T3 and T4,later than the priority-based transmission of frame 222 sent by station202.

An important feature of the invention is providing QoS support by meansof the TCMA distributed medium access protocol that schedulestransmission of different types of traffic based on their servicequality specifications. Station 204A is supplied with data from the filetransfer data source 214A, which has a lower QoS priority QoS(A).Station 204B is supplied with voice and video data from data source214B, which has a higher QoS priority QoS(B). Each wireless station 204Aand 204B can determine the urgency class of its pending packetsaccording to a scheduling algorithm. For example, file transfer data isassigned lower urgency class “A” and voice and video data is assignedhigher urgency class “B”. There are several urgency classes whichindicate the desired ordering. Pending packets in a given urgency classare transmitted before transmitting packets of a lower urgency class byrelying on class-differentiated urgency arbitration times (UATs), whichare the idle time intervals required before the random backoff counteris decreased.

The tiered contention multiple access (TCMA) protocol which operatesduring period 218 minimizes the chance of collisions between stationssharing the medium, while giving preference to those packets in higherurgency classes. Each urgency class has a corresponding urgencyarbitration time (UAT) which must expire before starting the randombackoff interval for packets assigned to that urgency class. Forexample, FIG. 2C shows that when the contention-free end frame 226 isreceived from the point coordinator 205 at time T3, the urgencyarbitration time UAT(A) for the less urgent class “A” and the urgencyarbitration time UAT(B) for the more urgent class “B” both begin tocount down for each respective urgency class. The urgency arbitrationtime UAT(B) for the more urgent class “B” has a shorter interval thatends at time T3′. The urgency arbitration time UAT(A) for a less urgentclass “A” has a longer interval that ends at time T3″. At the end of theshorter urgency arbitration time UAT(B) for the more urgent class “B”,the random backoff interval begins to count down for all of the packetsassigned to the more urgent class “B”. The random backoff interval 228Bfor the data packet 224B begins to count down from time T3′ and when itreaches zero, if the station's sensing mechanism indicates the medium isnot busy, then the packet 224B is transmitted. The same operation ofcounting down respective random backoff intervals is repeated for otherpackets assigned to the more urgent class “B”, until they are alltransmitted or until they time out at time T3″.

The urgency arbitration time UAT(A) for the less urgent class “A” has alonger interval that ends at time T3″. At the end of the longer urgencyarbitration time UAT(A) for the less urgent class “A”, the randombackoff interval begins to count down for all of the packets assigned tothe less urgent class “A”. The random backoff interval 228A for the datapacket 224A begins to count down from time T3″; and when it reacheszero, if the station's sensing mechanism indicates the medium is notbusy, then the packet 224A is transmitted. The same operation ofcounting down respective random backoff intervals is repeated for otherpackets assigned to the less urgent class “A”, until they are alltransmitted or until they time out at time T4.

As shown in FIG. 2D, the TCMA protocol at 230A assigns the urgencyarbitration time (UAT) of each data packet as a function of the QoSpriority of the data packet. For example, file transfer data with alower QoS priority will be assigned a longer urgency arbitration time ofUAT(A). In FIG. 2E, voice and video data with a higher QoS priority willbe assigned a shorter urgency arbitration time of UAT(B).

In addition, as shown in FIG. 2D, the random backoff interval iscalculated based on a contention window range CW(A) which has an initiallower value L(A) and an initial upper value U(A), which are functions ofthe urgency class. The value of the random backoff interval is selectedrandomly from a statistical distribution, whose mean and variance areset adaptively in response to the observed traffic intensity. In FIG.2E, the random backoff interval is calculated based on a contentionwindow range CW(B) which has an initial lower value L(B) and an initialupper value U(B), which are functions of the urgency class. The value ofthe random backoff interval is selected randomly from a statisticaldistribution, whose mean and variance are set adaptively in response tothe observed traffic intensity.

Other parameters can be made a function of the QoS priority to enabledifferential treatment of packets with different urgency classes,including the choice of UAT, the backoff timer distribution parameters,and the retry update parameters. Table 1 lists the differentiatingparameters for the different urgency classes. TABLE 1 Urgency classdifferentiation Initial Backoff Urgency Range (rLower[y], PersistenceAge Limit Classy UAT[y] rUpper[y]) Factor aAgeLimit[y] 1 PIFS (L₁, U₁)pf₁ D₁ 2 PIFS (L₂, U₂) pf₂ D₂ 3 PIFS (L₃, U₃) pf₃ D₃ 4 DIFS (L₄, U₄) pf₄D₄

FIG. 2F is a network diagram of a single-cell wireless LAN 200′ andthree stations transmitting data with two different QoS priorities,operating with the Tiered Contention Multiple access TCMA protocol, inaccordance with the invention. The single-cell wireless LAN 200′provides connectivity within radio range between wireless stations 202,202A, 204B, 204C, 206, and 208. Stations 204A and 204B are the same asthose shown in FIG. 2A. Station 204C is supplied with voice and videodata from data source 214C, which has the higher QoS priority QoS(B),the same as for station 204B. Thus, the TCMA frame 224C to betransmitted from station 204C must contend with the TCMA frame 224B fromstation 204B for transmission following urgency arbitration time UAT(B)at T3′. FIG. 2G is a timing diagram of the TCMA protocol, operating inFIG. 2F, in accordance with the invention. The random backoff interval228B drawn by the data packet 224B at station 204B is shorter than therandom backoff interval 228C drawn by the data packet 224C at station204C. Thus, the data packet 224B is transmitted before the data packet224C, following the urgency arbitration time UAT(B) at T3′. The urgencyarbitration time UAT(A) for the less urgent TCMA frame 224A has a longerinterval that ends at time T3″. At the end of the longer urgencyarbitration time UAT(A), random backoff interval 228A for the datapacket 224A begins to count down from time T3″; and when it reacheszero, if the station 214A sensing mechanism indicates medium is notbusy, then the packet 224A is transmitted.

FIG. 2H is a network diagram of a single-cell wireless LAN 200″ and onestation transmitting data with two different QoS priorities, operatingwith the Tiered Contention Multiple access TCMA protocol, in accordancewith the invention. The single-cell wireless LAN 200″ providesconnectivity within radio range between wireless stations 202, 204D,206, and 208. Station 204D has all three data sources 214A, 214B, and214C shown in FIG. 2F. Station 204D is supplied with voice and videodata from both data sources 214B and 214C, which have the higher QoSpriority QoS(B). Station 204D is supplied with file transfer data source214A, which has a lower QoS priority QoS(A). Thus, the TCMA frame 224Cto be transmitted from station 204D must contend with the TCMA frame224B from station 204D for transmission following urgency arbitrationtime UAT(B) at T3′. FIG. 2I is a timing diagram of the TCMA protocol,operating in FIG. 2H, in accordance with the invention. The randombackoff interval 228B drawn by the data packet 224B at station 204D isshorter than the random backoff interval 228C drawn by the data packet224C at station 204D. Thus, the data packet 224B is transmitted beforethe data packet 224C, following the urgency arbitration time UAT(B) atT3′. The urgency arbitration time UAT(A) for the less urgent TCMA frame224A at station 204D has a longer interval that ends at time T3″. At theend of the longer urgency arbitration time UAT(A), random backoffinterval 228A for the data packet 224A begins to count down from timeT3″; and when it reaches zero, if the station 214D sensing mechanismindicates medium is not busy, then the packet 224A is transmitted.

FIG. 3 is a functional block diagram of the TCMA urgency classprocessing based on QoS priorities for two urgency classes in thewireless station 204D of FIG. 2H. Station 204D is supplied with filetransfer data packet 224A from data source 214A, which has a lower QoSpriority QoS(A). Station 204D is supplied with voice and video datapacket 224B from data source 214B, which has a higher QoS priorityQoS(B). Station 204D is also supplied with voice and video data packet224C from data source 214C, which has the higher QoS priority QoS(B).Logic 308 assigns an urgency class to each data packet based on its QoSpriority. For example, file transfer data packet 224A is assigned lowerurgency class “A” and voice and video data packets 224B and 224C areassigned higher urgency class “B”. Logic 308 steers data packet 224A toa first queue 309 for less urgent data having a lower QoS priority, suchas file transfer data. Logic 308 can distinguish file transfer data byits file transfer protocol (FTP) format. Block 308 steers data packets224B and 224C to a second queue 311 for more urgent data having a higherQoS priority, such as voice and video data. Logic 308 can distinguishvoice and video data by its streaming media format, for example.

After logic 308 has assigned a data packet to a queue, a random backoffinterval is selected and paired with the packet. The length of timerepresented by the random backoff interval governs the position of thedata packet in the queue. The lower QoS data packet 224A from datasource 214A draws the random backoff interval 228A in FIG. 2I, and isassigned a corresponding position in the first queue 309. The firstqueue 309 for less urgent data in FIG. 3 includes timer 304 which timesthe lower urgency arbitration time UAT(A) and timer 310 which times therandom backoff interval for each data packet in the queue. When detector302 detects the contention-free end frame 226 from the point coordinator205 at time T3, this starts the count down of timer 304 of the lowerurgency arbitration time UAT(A). The higher QoS data packet 224B fromdata source 214B draws the random backoff interval 228B in FIG. 2I, andis assigned a corresponding position in the second queue 311. The higherQoS data packet 224C from data source 214C draws the random backoffinterval 228C in FIG. 2I, and is assigned a corresponding position inthe second queue 311. The second queue 311 for more urgent data in FIG.3 includes timer 306 which times the higher urgency arbitration timeUAT(B) and timers 312 and 314 which time the random backoff interval foreach data packet in the queue. When detector 302 detects thecontention-free end frame 226 from the point coordinator 205 at time T3,this also starts the count down of timer 306 of the higher urgencyarbitration time UAT(B).

When the higher urgency arbitration time UAT(B) times out first at timeT3′, this starts the count down of timers 312 and 314 of the randombackoff intervals 228B and 228C. The timer 314 for data packet 224Btimes out first and data packet 224B is passed to the transmissionoutput buffer 316 before data packet 224C, as shown in FIG. 2I. Whentimer 304 times out at later time T3″ for the lower urgency arbitrationtime UAT(A), this starts the count down of timer 310 of the randombackoff interval 228A. When timer 310 times out, lower urgency datapacket 224A is passed to the transmission output buffer 316, as shown inFIG. 2I.

FIG. 4 is a more detailed functional block diagram of the TCMA urgencyclass processing and the resulting ordering of the transmission of datapackets for three urgency classes. The urgency class processing can beperformed in a single wireless station with three different urgencyclasses or it can be distributed in multiple wireless stations, eachwith from one to three urgency classes. The notation used in FIG. 4 is amatrix-type notation, to facilitate explaining the operation of thethree queues 331, 332, and 333 for the three respective urgency classes“1”, “2”, and “3”. The processing of three urgency classes is shown inFIG. 4. High urgency class processing 321 for class “1” operates on datapackets DATA_1 which have been classified as high urgency data, such asvoice and video data. Three data packets are shown in this class:DATA_11, DATA_12, and DATA_13, where the left index represents theurgency class “1” and the right index represents the relative delay ofthe backoff interval, with DATA_13 being delayed longer than DATA_11. Aseach of these data packets is assigned to the queue 331, a randombackoff interval is selected and paired with the packet. The randombackoff interval is a random number selected from the backoff range,which has a lower bound of L_1 and an upper bound of U_1, which are afunction of the urgency class. The length of time represented by therandom backoff interval governs the position of the data packet in thequeue, with DATA_13 being delayed the longest interval of BKOFF_13,DATA_12, which is delayed the second longest interval of BKOFF_12, andDATA_11 which is delayed the shortest interval of BKOFF_11. The highurgency arbitration timer UAT_1 begins its count down at time T3 at theend of the contention-free period. The high urgency arbitration timerUAT_1 times out first at time T3′, and this starts the count down ofbackoff timers BKOFF_13, BKOFF_12, and BKOFF_11. As each respectivebackoff timer times out, the corresponding high urgency data packetDATA_11, DATA_12, and DATA_13 is output at 341 and transmitted, as shownin the timing diagram at the bottom of FIG. 4.

Medium urgency class processing 322 for class “2” operates on datapackets DATA_2 which have been classified as medium urgency data, suchas interactive data. Three data packets are shown in this class:DATA_21, DATA_22, and DATA_23, where the left index represents theurgency class “2” and the right index represents the relative delay ofthe backoff interval, with DATA_23 being delayed longer than DATA_21. Aseach of these data packets is assigned to the queue 332, a randombackoff interval is selected and paired with the packet. The randombackoff interval is a random number selected from the backoff range,which has a lower bound of L_2 and an upper bound of U_2, which are afunction of the urgency class “2”. The length of time represented by therandom backoff interval governs the position of the data packet in thequeue, with DATA_23 being delayed the longest interval of BKOFF_23,DATA_22, which is delayed the second longest interval of BKOFF_22, andDATA_21 which is delayed the shortest interval of BKOFF_21. The mediumurgency arbitration timer UAT_2 begins its count down at time T3 at theend of the contention-free period. The medium urgency arbitration timerUAT_2 times out second at time T3″, and this starts the count down ofbackoff timers BKOFF_23, BKOFF_22, and BKOFF_21. As each respectivebackoff timer times out, the corresponding medium urgency data packetDATA_21, DATA_22, and DATA_23 is output at 342 and transmitted, as shownin the timing diagram at the bottom of FIG. 4.

Low urgency class processing 323 for class “3” operates on data packetsDATA_3 which have been classified as low urgency data, such as filetransfer data. Three data packets are shown in this class: DATA_31,DATA_32, and DATA_33, where the left index represents the urgency class“3” and the right index represents the relative delay of the backoffinterval, with DATA_33 being delayed longer than DATA_31. As each ofthese data packets is assigned to the queue 333, a random backoffinterval is selected and paired with the packet. The random backoffinterval is a random number selected from the backoff range, which has alower bound of L_3 and an upper bound of U_3, which are a function ofthe urgency class “3”. The length of time represented by the randombackoff interval governs the position of the data packet in the queue,with DATA_33 being delayed the longest interval of BKOFF_33, DATA_32,which is delayed the second longest interval of BKOFF_32, and DATA_31which is delayed the shortest interval of BKOFF_31. The low urgencyarbitration timer UAT_3 begins its count down at time T3 at the end ofthe contention-free period. The low urgency arbitration timer UAT_3times out third at time T3′″, and this starts the count down of backofftimers BKOFF_33, BKOFF_32, and BKOFF_31. As each respective backofftimer times out, the corresponding low urgency data packet DATA_31,DATA_32, and DATA_33 is output at 343 and transmitted, as shown in thetiming diagram at the bottom of FIG. 4.

FIG. 5A is a more detailed functional block diagram of the TCMA urgencyclass processing of FIG. 4, showing several input parameters thatprovide differentiation between different urgency class transmissions.FIG. 5A shows the resulting ordering of the transmission of data packetsfor the medium urgency class for a first try backoff range L_2,U_2.Differentiation between different urgency class transmissions isachieved through the use of the class timer 504 providing class-specificurgency arbitration times (UATs). The arbitration time is the timeinterval that the channel must be sensed idle by a node beforedecreasing its backoff counter. Initial backoff range buffer 506provides class-specific parameters of the probability distribution usedto generate random backoff times and class-specific backoff retryadjustment functions. The backoff time is drawn from a uniform randomdistribution. The backoff retry parameters determine how the backoffdistribution parameters are adjusted on successive retries followingtransmission failure. Age limit buffer 502 provides class-specificpacket age limits. The age limits lead to the cancellation of atransmission if the time since arrival at the MAC layer exceeds athreshold value. The persistence factor buffer 508 provides apersistence factor, pf_(i), that is different for each class. Thepersistence factor, pf_(i), that is different for each class i, will beused to multiply the backoff window from which backoff counters will bedrawn randomly upon transmission retrial. FIG. 5A also shows theorganization of the queue register_21, the queue register_22, and thequeue register_23 in their respectively earlier to later time order inthe urgency class processing 322.

FIG. 5B is the same as FIG. 5A, but shows the resulting ordering of thetransmission of data packets for the medium urgency class for a secondtry backoff range L_2′,U_2′. If the transmission is not successful, thebackoff distribution is altered before the random backoff counter ischosen for retry. The DCF doubles the backoff range (the backoff counterassumes larger values) following transmission failure. Hence, a packetis transmitted quickly in light packet traffic, but its transmission canbe delayed substantially in congestion conditions. When a traffic streamrequires low delay jitter, the goal is to minimize any deviation fromthe mean delay, which is better served if the delay is independent ofpacket-arrival rates.

The enhanced-DCF will employ a different discipline for differentclasses to adjust the backoff range when transmission fails. The initialbackoff range buffer 506 provides a new backoff range(aLower[y],aUpper[y]) which will be determined by functions that dependon the packet's class, the traffic congestion estimates, which arederived by the Traffic Intensity Estimation Procedure (TIEP) in Section4 herein, and on the time spent by the packet waiting for transmission.These functions depend on the sensitivity of the class to delay or delayjitter. The persistence factor buffer 508 provides a persistence factor,pfi, that is different for each class i, which will be used to multiplythe backoff window from which backoff counters will be drawn randomlyupon transmission retrial. Longer backoff ranges may be used initiallyfor delay jitter sensitive traffic and, if transmission fails,contention persistence can be increased by shifting the backoff range tolower values for subsequent attempts. This will have the effect ofpostponing transmission and reducing the competition for the channel bynew packet arrivals, giving a better chance to aging packets to transmitsuccessfully. The overall delay jitter is thus minimized, making thisdiscipline a better choice for isochronous traffic.

FIG. 7A is a network diagram of a single-cell wireless LAN 700 which hastwo access points 708A and 708B in the same cell. In accordance with theinvention, the Tiered Contention Multiple Access (TCMA) protocol isapplied to the two access points during a special preliminary contentionperiod 735 to determine which access point will control thetransmissions during a following contention-free period 716 in FIG. 7B.FIG. 7B is a timing diagram of the TCMA protocol operating in FIG. 7A,in accordance with the invention.

The single-cell wireless LAN 700 provides connectivity within radiorange between wireless stations 702, 704A, 704B, 706, 708A and 708B.Access point 708A is a wireless station that allows connections via thebackbone network 710A to wired network-based resources, such as servers.Access point 708A is supplied with data from a data source 734A, whichhas a lower QoS priority QoS(A). Access point 708B is a wireless stationthat allows connections via the backbone network 710B to wirednetwork-based resources, such as servers. Access point 708B is suppliedwith data from data source 734B, which has a higher QoS priority QoS(B).Station 704A is supplied with data from a file transfer data source714A, which has a lower QoS priority QoS(A). Non-real-time applicationssuch as file transfer, Email, and data backup can tolerate greaterdelay. Station 704B is supplied with voice and video data from datasource 714B, which has a higher QoS priority QoS(B). Voice and videoapplications have the most rigorous delay requirements.

Before transmitting a frame, the medium access control (MAC) layer mustfirst gain access to the network. FIG. 7B shows three interframe space(IFS) intervals that defer a station's access to the medium and providesvarious levels of priority. Each interval defines the duration betweenthe end of the last symbol of the previous frame 713 at time T1 to thebeginning of the first symbol of the next frame at T2. The ShortInterframe Space (SIFS) 715 provides the highest priority level byallowing some frames to access the medium before others.

The Priority Interframe Space (PIFS) 717 of FIG. 7B is used for highpriority access to the medium during a special preliminary contentionperiod 735 to determine which access point will control thetransmissions during a following contention-free period 716. The pointcoordinator 705B in the access point 708B connected to backbone network710B in FIG. 7A has a higher QoS priority data source QoS(B); and thusduring the TCMA access point contention period 715, it seizes control ofthe priority-based Point Coordination Function (PCF) to dictate whichstations in cell 700 can gain access to the medium. During thecontention-free period 716, station 702 in FIG. 7A, for example, isdirected by the access point 708B to transmit its high priority dataframe 722. The point coordinator 705B in the access point 708B sends acontention-free poll frame 720 to station 702, granting station 702permission to transmit a single frame to any destination. Station 702wants to transmit its high priority data frame 722 to the receivingstation 706. Station 702 can transmit its frame 722 during period 716 ifit senses that the medium is idle. All other stations, such as stations704A, 704B, 706, and 708A, in the cell 700 can only transmit duringcontention-free period 716 if the point coordinator 705B grants themaccess to the medium. In this example, stations 704A and 704B and accesspoint 708A have data sources 714A, 714B, and 734A that are lowerpriority than the high priority data frame 722, and thus they must waituntil the end of the contention-free period 716 at T3. This is signaledby a contention-free end frame sent by the point coordinator 705B. Thecontention-free end frame is sent to identify the end of thecontention-free period 716, which occurs when time expires or when thepoint coordinator 705B has no further frames to transmit and no stationsto poll.

The distributed coordination function (DCF) Interframe Space (DIFS) 719of FIG. 7B is used by stations 704A and 704B, for example, fortransmitting data frames 724A and 724B, respectively, during the tieredcontention multiple access (TCMA) period 718. The DIFS spacing delaysthe transmission of frames 724A and 724B to occur between T3 and T4,later than the priority-based transmission of frame 722 sent by station702.

An Enhanced DCF Parameter Set is contained in a control packet sent bythe AP to the associated stations, which contains class differentiatedparameter values necessary to support the TCMA. These parameters can bechanged based on different algorithms to support call admission and flowcontrol functions and to meet the requirements of service levelagreements.

DETAILED DESCRIPTION OF THE INVENTION

In one aspect of the invention, a distributed medium access protocolschedules transmission of different types of traffic based on theirservice quality specifications. The competing nodes generate varioustypes of traffic streams that may differ by their sensitivity to delay.Real-time traffic streams such as voice and video are delay-sensitivewith limited tolerance for long delays. Such services can tolerate somepacket loss. Music and video on demand are examples of isochronoustraffic that tolerate longer delay but limited delay jitter. Theirtolerance for packet loss is comparable to that of real-time traffic.Finally, data applications such as file transfers or e-mail aredelay-insensitive but intolerant of packet loss. They are commonlyreferred to as best-effort traffic.

Because of the limited tolerance for delay, the transmission ofdifferent types of packets warrants different urgency. Each nodedetermines the urgency class of its pending packets according to ascheduling algorithm. There are several urgency classes. The urgencyclass indicates the desired ordering. Pending packets in a given urgencyclass must be transmitted before transmitting packets of a lower urgencyclass. Two basic approaches can be used to impose this ordering: abackoff counter or a persistence probability.

Backoff Approach

A backoff counter is employed in the same way as in binary exponentialbackoff. Typically, the backoff counter is selected randomly from arange of values, referred to as the backoff window, the reason for therandomness being to avoid collisions that would occur if more than onenode has packets awaiting transmission. The backoff counter is decreasedwhen the channel is idle for a given time interval and transmission isattempted when it expires. In case of collision, the backoff procedureis repeated up to a maximum number of times, until a specified backoffrange is reached. Once this occurs, the packet transmission iscancelled.

Backoff Countdown Procedures

Backoff countdown requires that the channel is sensed for a given timeinterval, whose specification varies in different implementations of thebackoff-based collision resolution. This discussion considers twovariations of the countdown procedure: the classic backoff and thebackoff with preparation.

With classic backoff, the backoff counter is decreased when the channelis idle for a specified time interval, which is referred to as thebackoff-counter update time (BCUT). Transmission is attempted when thecounter expires. Following the transmission on the channel, a node withbackoff counter equal to 1 senses the channel, which is idle. After atime interval BCUT, the node's backoff counter begins its count down andwhen it expires, the node transmits. Transmissions by the other nodesfollow.

Backoff with preparation is a variation of the backoff described above,practiced in the IEEE 802.11 Wireless Local Area Network (WLAN) mediumaccess control (MAC) protocol. [IEEE Standards Department, D3, supra] Asin classic backoff, the backoff counter is decreased whenever thechannel is idle for a time interval equal to BCUT, except immediatelyfollowing a transmission. After a transmission is sensed on the channel,the duration of the idle required for backoff adjustment is longer; thechannel must be idle for an additional time interval, which is referredto as the backoff-counter preparation time (BCPT), before countdownstarts. Following the transmission on the channel, a node with backoffcounter equal to 1 senses the channel, which is idle. The node waits fora time interval equal to BCPT, after which the countdown procedurestarts. After a time interval BCUT, the node's backoff counter expires,and the node transmits; and other nodes follow. It is worth noting thatclassic backoff is a special case of backoff with preparation whereBCPT=0. BCPT is equal to the Distributed Coordination Functioninterframe space (DIFS), and BCUT is equal to the slot time for the IEEE802.11 Standard. [IEEE Standards Department, D3, supra]

As explained below, these basic procedures are followed, but withcertain modifications. They involve the length of the idle time intervalrequired before the backoff counter is decreased—called the arbitrationtime, the adjustment of the backoff window, and the fate of packetsreaching their transmission retrial limit.

Arbitration Time Differentiation

In order to accommodate the delay intolerance of real-time traffic, thechannel must be readily available upon arrival of a packet. Sincetransmission of a packet cannot be preempted, the channel cannot beoccupied for time intervals longer than the delay tolerance of real-timetraffic. This imposes a limit on the largest packet size, which isaccomplished through packet fragmentation. [IEEE Standards Department,D3, supra] At the same time, it is important to reduce contention forthe channel; that means one should decrease the number of nodes thatattempt transmission concurrently. Finally, one should want nodes withpackets awaiting transmission to be able to access the channel in theorder prescribed by a scheduling algorithm; for instance, nodes withdelay-sensitive traffic would access the channel, when idle, beforeother nodes.

The management of QoS is made possible by partitioning contention forthe channel through the use of “urgency classes” for the contendingnodes. Deterministic scheduling algorithms, applied to the multimediatraffic streams received at each node, place a packet in the accessbuffer; the buffered packet is assigned an urgency class, which is basedon its traffic type and history. For example, three nodes can eachreceive multimedia traffic. Any of a multitude of scheduling algorithmsmay be chosen. For example, a scheduling algorithm could assign the topurgency classification to packets of real-time traffic, medium urgencyclassification to isochronous traffic, and least urgency classificationto best-effort traffic. But in order to afford the greatest flexibility,urgency classification is not tied exclusively to the traffic type; itmay also rely on performance parameters as they are observed in realtime. For instance, a scheduling algorithm may advance packets withshort remaining life to a higher urgency class. In general, it isdesirable that packets generated by stations with multiple traffic typeswill not be disadvantaged relative to packets from stations with asingle type of traffic because of a single contention point.

For simplicity of presentation, it is assumed in the ensuing discussionthat at any point in time, a node is concerned with the transmission ofpackets of a single type. If a node generates several types of packets,scheduling procedures internal to the node will select the packet to berouted.

Contention for the channel at any point in time is restricted to membersof the same urgency class, and packet transmissions are orderedaccording to their urgency class; hence the name “tiered contention”.Partitioning of contention is accomplished through the specification ofthe length of the arbitration time. The arbitration time is the timeinterval that the channel must be sensed idle by a node before startingto decrease its backoff counter. By using a different arbitration timefor each urgency class, separation of contention by urgency class isachieved. Herein, this arbitration time is called the urgencyarbitration time. Ordering of transmissions by urgency classification isaccomplished by assigning shorter arbitration times to the more urgenttraffic. This way, lower urgency packets will not cause collisions tohigher urgency packets, and will only attempt to seize the channel ifthere are no higher urgency packets pending transmission.

Contention Partitioning

By assigning shorter arbitration times to higher urgency packets, higherurgency packets will dominate the channel in congestion, as lowerurgency packets would get less of a chance to decrease their backoffcounters because of their longer arbitration time. Lower urgency packetswill not cause collisions to higher urgency packets and will only beable to seize the channel if there are no higher urgency packets tryingto transmit.

Collisions between packets of different urgency classes are avoided ifthe arbitration times are selected properly. Depending on the backoffcountdown procedure employed, contention partitioning can be achievedthrough variation by urgency class of either of the two idle-timerequirements or both of them together. In other words, the urgencyarbitration time could be differentiated by one of the following: thebackoff-counter preparation time (BCPT)—yielding an urgency arbitrationtime that is equal to UAT_(i) ⁰; the backoff—counter update time(BCUT)—yielding an urgency arbitration time that is equal to UAT_(i) ¹;or both times—yielding an urgency arbitration time that is equal to thesum UAT_(i) ⁰+UAT_(i) ¹. In the last case, when assigning urgencyarbitration times to classes, the BCUT value chosen for a lower priorityclass may not be less than that of higher priority class. Then, orderingof urgency arbitration times and, hence, of classes is lexicographicwith UAT_(i) ⁰ dominating. That is, class i has a shorter arbitrationtime than class j if one of the following is true: either UAT_(i)⁰<UAT_(j) ⁰, or UAT_(i) ⁰=UAT_(j) ⁰ and UAT_(i) ¹<UAT_(j) ¹. Naturally,the difference between the arbitration times of two different urgencyclasses must be at least equal to the time necessary for a station todiscern that another station has seized the channel. One would refer tothis minimal arbitration-time difference as the arbitration-timeincrement (AI).

In order to simplify the following discussion, arbitration timedifferentiation by BCPT is used.

UAT differentiation by arbitration time in TCMA works in two ways. Itoffers not only prioritized access to frames ready for transmission, butalso retards the backoff countdown process of lower-priority frames incongestion conditions. Lower-priority frames cannot countdown theirbackoff if there are higher-priority frames with backoff equal to 1waiting to transmit. This is what helps higher priority frames accessthe channel more readily in a minimally disruptive way, thus resultingin lower delays.

EXAMPLE

Three nodes have frames queued for transmission, one each. Node A haslower priority than nodes B and C, and hence longer BCPT. At time T0,when the busy interval is over, the residual backoff times of nodes A,B, and C are 1, 2, and 1, respectively. Following the currenttransmission, node C waits for a time interval equal to its BCPT, afterwhich it starts backoff countdown. Node B does the same. The backofftimer of node C, starting at 1, will expire after a slot time. At thatpoint the node transmits. The backoff of node B, which started at 2, hasbecome 1 by that time. Node C, which has lower priority and, hence,longer BCPT will not be able to decrement is backoff because the channelgets busy again before it can start backoff countdown. Once the backoffof node B expires and it transmits the queued frame, channel idle timeexceeds the BCPT of node A. It can then count down its backoff and thentransmit its queued frame. So, even though node B has a longer backoffdelay than node A, it transmits sooner because of its higher priority.

Backoff Window Adjustment and Persistence Factors

Present implementations of backoff double the backoff range (the backoffcounter assumes larger values) following transmission failure. Hence, apacket is transmitted quickly in light packet traffic, but itstransmission can be delayed substantially in congestion conditions. Whena traffic stream requires low delay jitter, the goal is to minimize anydeviation from the mean delay, which is better served if the delay isindependent of packet-arrival rates. Moreover, with congestion-adaptivebackoff (see below), the random backoff values used on the firsttransmission attempt are drawn from a backoff distribution window thatis appropriate for the traffic intensity at hand. Hence, it is no longernecessary to vary the range of backoff window size widely in search of awindow size that will enable successful access at the present contentionlevel.

In view of this goal, a different discipline is used herein foradjusting the window for the backoff counter when transmission fails.While larger backoff counter values are used initially, if transmissionfails, contention persistence is increased by using a “persistencefactor” other than 2 to multiply the backoff window upon transmissionretrial. That enables decreasing the mean of the statisticaldistribution from which the new backoff counter would be selected forsubsequent attempts. This postpones transmission and reduces thecompetition for the channel by newly arrived packets, giving a betterchance to aging packets to transmit successfully. The overall delayjitter is thus minimized, making this discipline a better choice forisochronous traffic. Different persistence factor values would be usedfor urgency classes with different sensitivity to delay.

Because of its tendency to reduce long delays, this discipline would bepreferable, in congestion conditions, to decreasing backoff ranges evenfor real-time traffic, albeit delay-sensitive. There is a tradeoff,however, as high backoff counters postpone the transmission of thepacket unnecessarily in light traffic conditions.

Congestion-Adaptive, Traffic-Specific Backoff

Ideally one would want to start with a backoff counter appropriate forthe traffic intensity at hand and retry upon failure with successivelysmaller backoff counters in order to increase the persistence of agingpackets. The nodes can estimate traffic intensity from the number offailed transmission attempts, both their own and those of neighboringnodes. For the latter, each node includes the number of the retrialattempts in the messages exchanged during reservation and/or in thepacket headers. As each node receives these messages, it will combinethem with the retrial attempts it has experienced, assess the level ofcongestion, and select its initial backoff window accordingly. A shorterbackoff counter is needed for lower traffic intensity.

Each node selects a backoff counter randomly from a statisticaldistribution, whose mean and variance are set adaptively in response tothe observed traffic intensity. A typical statistical distribution usedfor backoff is the uniform distribution; its mean is $\frac{U + L}{2}$and its variance is$\frac{( {U - L} )^{2}}{12} = {\frac{x^{2}}{12}.}$The variance can be adjusted by changing the window size x and the meanis adjusted by changing the minimum value L. Other choices for adistribution are also possible.

In view of the reduction of contention to nodes of a given urgency classthat is achieved by using different arbitration times, it is preferableto have traffic intensity estimates by urgency class. Hence, thebroadcast retrial numbers would be class specific, and a node thatgenerates more than one type of packet would remember and broadcastseveral retrial numbers that would be class-specific, from whichclass-specific backoff counter ranges would be estimated.

The adjustment of the backoff counter distribution parameters to trafficintensity would be such that high congestion in an urgency class wouldincrease the variance of the backoff-counter distribution, while higherintensity in classes of greater urgency would increase the mean of thebackoff counter distribution.

Lifetime Limits

Congestion leads to collisions and consecutive repetitions of thebackoff countdown process. In present implementations of the backoffprocedure, a maximum retrial number is permitted after whichtransmission is cancelled. [IEEE Standards Department, D3, supra] Thisfeature is desirable for real-time traffic, as delayed packets havelittle value and limited packet loss is acceptable. But for dataapplications, which are tolerant of longer delays but intolerant ofmissing packets, transmission cancellation should not be as forthcoming.

A better discipline for packet transmission cancellation would relydirectly on the delay experienced by the packet since entering the MAClayer. For delay intolerant traffic, a packet would be dropped if itsdelay exceeds a specified threshold value; different threshold valuesshould be used for different traffic types.

TCMA Protocol

To summarize, the mechanism for collision resolution in the TCMAproposal employs a backoff counter resident at each node contending forthe channel in the same way as in binary exponential backoff, but witharbitration times and persistence factors that are differentiatedaccording to urgency classes. In the absence of other multiple accesscontrol protocols with which compatibility is sought, TCMA is describedas follows:

-   1. An urgency class i is assigned to the packet in the access buffer    of each node according to a standardized deterministic scheduling    algorithm internal to the node.-   2. Each node selects a backoff counter randomly from a statistical    distribution, whose mean and variance are set adaptively in response    to the observed traffic intensity.-   3. The parameters of the backoff-counter initial distribution are    adjusted based on estimates of traffic intensity in each urgency    class.-   4. Congestion estimates are derived from data that include: feedback    on the success or failure of a transmission attempt, the number of    re-transmissions attempted by a node and by each of its neighbor    nodes and from the age of such retrials. A separate number of    transmission attempts is remembered or broadcast for each urgency    class; and congestion is thus estimated for each urgency class. This    is made possible through the introduction of new field in all    reservation messages [including request to send (RTS) and clear to    send (CTS)] and headers of transmitted packets indicating the number    of transmission attempts. FIG. 6 is a message format diagram of a    message, such as a request to send (RTS) and clear to send (CTS), or    a header of transmitted packet, indicating the number of    transmission attempts. Congestion is estimated for each urgency    class through the introduction of this message format.-   5. The backoff counter would start to be decreased when the channel    is idle for a time interval equal to the arbitration time    corresponding to the urgency classification. The node would attempt    transmission when the backoff counter expires.-   6. Upon transmission failure, new backoff distribution parameters    would be computed by decreasing the mean or by multiplying the    contention window by the persistence factor for the urgency    classification, and a new backoff counter value would be selected    from the new distribution.-   7. The backoff procedure is repeated until a specified packet delay    is reached, which is urgency-class specific. Once this occurs, the    packet transmission is cancelled.

Compatibility of TCMA with Other MAC Protocols

TCMA can be used to combine enhanced DCF (E-DCF), a distributedcontention-based MAC protocol, with other protocols both centralized anddistributed.

Co-existence with a centralized control protocol

Consider first a protocol with centralized control, such as the IEEE802.11 PCF option. Two requirements are imposed by the co-existence ofthese two protocols: (i) a mechanism should permit the centralizedprotocol to gain access to the channel according to a specifiedpriority; and (ii) once the channel is seized by the centralizedprotocol, control should be maintainable for the entire contention-freeperiod, until the protocol is ready to release the channel forcontention.

Access to the channel by a centralized MAC protocol is achieved bycontention, a benefit of this being avoiding interference between cells.Centralized access may be given top priority by assigning thecentralized protocol beacon the appropriate arbitration time. Thechannel will remain under the control of the centralized MAC protocol byrequiring message exchanges that would cause the spacing betweenconsecutive transmissions to be shorter than the time the channel mustbe idle before a station attempts a contention-based transmissionfollowing the end of a busy-channel time interval. One refers to thedesired maximum spacing between consecutive messages exchanged in thecentralized protocol as the central coordination time (CCT).

The PCF (or HCF) has a CCT=PIFS, the priority inter-frame space. Hence,no station may access the channel by contention before an idle period oflength equal to DIFS=PIFS+1(slot time) following the end of abusy-channel time interval. It would thus be sufficient for the BCPTvalue used in E-DCF to be such that BCPT>CCT. Or, assuming thatcontention partitioning is achieved through differentiation by the BCPTvalues, the urgency arbitration time of a class j, UAT_(j), would begreater than PIFS for all urgency classes j>1.

Backward-Compatibility Adjustments for the IEEE 802.11 PCF and DCF

CMA can be easily calibrated for backward compatibility with the IEEE802.11 PCF and DCF options. As described above, to bebackward-compatible with the former, it is sufficient to require thatthe shortest arbitration time should be longer than PIFS, the priorityinter-frame space. PIFS equals 30 microseconds for PHY DS and 78microseconds for PHY FH.

As contention-based protocols, E-DCF and DCF protocol can co-exist, butthe contention level and the allocation of the channel time among thenodes will depend critically on the length of urgency arbitration timesthat can be implemented relative to the parameters used in IEEE 802.11DCF. Moreover, it is imperative for the adoption of E-DCF that stationsemploying this protocol are able to seize the channel for their highestpriority classes before any legacy terminals that operate in DCF mode.

The latter implies that E-DCF must differentiate its urgency arbitrationtimes by the backoff counter preparation time (BCPT). With BCPT lengthsshorter than the backoff counter preparation time used in the IEEE802.11 DCF mode, which is equal to DIFS, a new station operating underTCMA will be able to decrease its backoff counter faster than a legacyterminal in the IEEE 802.11 DCF mode. As packets from legacy stationswould get less of a chance to decrease their backoff counters because oftheir longer arbitration time, high urgency packets from the newterminals will dominate the channel in congestion. The value of DIFS is50 microseconds for PHY DS and 128 microseconds for PHY FH.

To co-exist with the centralized access protocol, E-DCF would haveselect values for the top urgency arbitration times between PIFS andDIFS. Enhanced stations (ESTAs) employing TCMA can co-exist with IEEE802.11 legacy stations if the physical layer for the new stationsprovides for an arbitration-time increment that is compatible with thenumber of classes, PC, desired with urgency greater than that of legacypackets. For example, since the top urgency classes must have urgencyarbitration times between PIFS and DIFS, the arbitration-time incrementAI must satisfy the following requirement. $\begin{matrix}{{AI} \leq \frac{{DIFS} - {PIFS}}{{PC} + 1}} & (9)\end{matrix}$

This restriction does not apply if PCF does not rely on contention togain control of the channel and other mechanisms are relied on toprevent contention during the contention-free period.

However, because the time in which the “clear channel assessment” (CCA)function can be completed is set at the minimum attainable for thepresent PHY specification, the minimum value for the arbitration-timeincrement AI is equal to the slot time, which is 20 microseconds for PHYDS and 50 microseconds for PHY FH.

This implies that the first priority class above legacy would berequired to have an arbitration time equal to PIFS. Though this fails tomake the magnitude of UATs greater than PIFS—as stated previously it ispossible to prevent contention-based transmission after a PIFS idleperiod following a busy-channel interval.

Contention-based transmission can be restricted to occur after a DIFSidle period following the end of a busy channel period for ESTAs withurgency classification above legacy that use an arbitration time of PIFSif the following condition is met: the backoff value of such stations isdrawn from a random distribution with lower bound that is at least 1.That is, the lower bound of the random backoff range, rLower, will begreater than or equal to 1 for the E-DCF urgency classes with UAT=PIFS.Given that all backlogged stations resume backoff countdown after abusy-channel interval with a residual backoff of at least 1, the soonesta station will attempt transmission following completion of the busyinterval will be a period equal to PIFS+1 (slot time)=DIFS. This enablesthe centralized access protocol to maintain control of the channelwithout colliding with contention-based transmissions.

To see that backlogged stations will always have a residual backoffvalue of at least 1 every time they resume countdown upon termination ofa busy channel period, consider a station with a backoff value m>0. Thestation will decrease its residual backoff value by 1 after each timeslot that the channel remains idle. If m reaches 0 before countdown isinterrupted by a transmission, the station will attempt transmission,which will either fail, leading to a new backoff being drawn, orsucceed. Otherwise, countdown will be resumed after the busy-channelperiod ends, with a residual backoff of 1 or greater. Therefore, if thesmallest random backoff that can be drawn is 1 or greater, ESTA willalways wait for at least a DIFS idle interval following a busy period toattempt transmission.

Several classes with priority above that of legacy stations can beobtained by differentiation through other parameters, such as theparameters of the backoff time distribution, e.g. the contention windowsize. Backoff times for higher priority packets are drawn fromdistributions with lower mean values. The variance and higher moments ofeach distribution will depend on the traffic intensity experienced forthat class. All these classes meet the requirement that a DIFS idleperiod follow a busy channel interval before the station seizes thechannel by imposing the restriction that the backoff value of suchstations be drawn from a random distribution with lower bound of atleast 1.

The traffic classes with arbitration time of PIFS will have higherpriority than the traffic classes with arbitration time equal to DIFSbecause PIFS<DIFS; (i.e. because of their shorter arbitration time). Forthe tiered contention mechanism, a station cannot begin to decrease itsresidual backoff until an idle period of length equal to its arbitrationtime has passed. Therefore, a legacy station will be unable to transmituntil all higher-priority stations with residual backoff of 1 havetransmitted. Only legacy stations that draw a backoff value of 0 willtransmit after a DIFS idle period, thus competing for the channel withthe higher priority stations with residual backoff equal to 1. Thisoccurs only with a probability less than 3 percent since the probabilityof drawing a random backoff of 0 from the range [0,31] is equal to 1/32.

Arbitration Time for Centralized Access Protocol

Given that the arbitration time of the top urgency class for an ESTAusing E-DCF to access the channel is PIFS, and in order to assign thecentralized access protocol [PCF or HCF] the highest priority access andpriority class, it must have an arbitration time shorter than PIFS by atleast a time slot; that is, its arbitration time must equal SIFS. As inthe case of the top traffic priority class for stations, the backoffvalues for each AP must be drawn from a range with a lower bound of atleast 1. Using the same reasoning as above, the centralized accessprotocol will not transmit before an idle period less than PIFS=SIFS+1(slot time), thus respecting the inter-frame spacing requirement for aSIFS idle period within frame exchange sequences. Moreover, the shorterarbitration time assigned to the centralized access protocol ensuresthat it accesses the channel with higher priority than any stationattempting contention-based access.

Collisions, which are possible between the centralized access protocolsof different BSSs within interfering range, or between stationsaccessing the channel by contention and a centralized access protocol,are resolved through the backoff countdown procedures of TCMA. Theprobability of such collisions is decreased by enabling higher prioritynodes with residual backoff value equal to 1 to always be able to seizethe channel before lower priority nodes.

Arbitration times have been assigned to a centralized access protocol(PCF or HCF) that co-exists with ESTAs. The centralized access protocolhas the top priority, while the traffic classes for the ESTAs offerpriority access both above and below that provided by legacy stations.

Table 2 illustrates the parameter specification for K different E-DCFclasses according to the requirements given above. The centralizedaccess protocol has a higher priority than the highest E-DCF priorityclassification, and hence the shortest UAT value. The top K-2 E-DCFclasses have priority above legacy but below the centralized accessprotocol; they achieve differentiation through the variation of thecontention window size as well as other parameters. Classes withpriority above legacy have a lower bound, rLower, of the distributionfrom which backoff values are drawn that is equal to 1 or greater.Differentiation for classes with priority below legacy is achieved byincreasing UAT values; the lower bound of the random backoffdistribution can be 0. TABLE 2 TCMA Priority Class Description PriorityClass Description UAT rLower 0 Centralized access protocol SIFS >=1 1 tok − 1 E-DCF Traffic with priority PIFS = SIFS + >=1 above Legacy 1(slottime) k E-DCF Legacy-equivalent DIFS = SIFS + 0 traffic priority 2(slottime) n = k + 1 to K E-DCF Traffic priority > DIFS = SIFS + 0 belowLegacy (2 + n − k) (slot time)

Enhanced-DCF Proposal

The basic medium access protocol is a Distributed Coordination Function(DCF) that allows for automatic medium sharing according to urgencyclassifications assigned to transmissions through the use of the TCMA(Tiered Contention Multiple Access) method. This employs Collision SenseMultiple Access with Collision Avoidance (CSMA/CA) and a random backofftime following a busy medium condition, with certain enhancements thatenable differential treatment of packets with different Quality ofService (QoS) requirements.

Class Differentiation Attributes

Differentiation between different urgency class transmissions isachieved through the use of four class-specific attributes:

(1) the arbitration time, the time used for backoff countdown deferral;(2) parameters of the probability distribution used to generate randombackoff times, and more specifically, the size of the contention windowfrom which the random backoff is drawn; (3) backoff retry adjustmentfunctions, the simplest of which is the ‘persistence factor’ used indetermining the size of the contention window in collision resolution;and (4) limits on the MAC-layer dwell time, serving as surrogates forpacket age limits.

Like other parameter sets that are broadcast periodically by the AP inpresent 802.11 WLANs, the values of the above class differentiatingparameters will also be broadcast by the AP in management frames. Theseparameter values can thus be updated periodically based on differentscheduling algorithms that support a variety of functions, including butnot limited to call admission and flow control functions. A serviceprovider can coordinate, through the use of an intelligent controller,setting the values of such parameters of several APs serving a multi-BSSsystem in order to provide quality of service as required by thespecifications of service level agreements.

Priority Differentiation by ‘Arbitration Time’

Arbitration time is the time interval the medium must be idle before anode (or priority queue within a node) starts or resumes backoffcountdown. It serves the same role as DIFS in the present standard. WithTCMA, a different arbitration time is used for each priority level. Anew IFS is introduced: AIFS (arbitration-time inter-frame space) is usedfor deferral of backoff countdown by different BCPT values, as shown inFIG. 8. Higher-priority frames have shorter AIFS.

For example, one priority traffic will have an AIFS=PIFS, the nextpriority level will have the same BCPT as legacy stations, namelyAIFS=DIFS, and lower priority levels will have increasing BCPT length.

The TCMA protocol is designed to reduce the collision probabilitybetween enhanced stations (ESTAs) of different urgency classificationaccessing a medium, at the point where collisions would most likelyoccur. Just after the medium becomes idle following a busy medium (asindicated by the clear channel assessment (CCA) function) is when thehighest probability of a collision exists. This is because multipleESTAs could have been, and with congestion will probably be, waiting forthe medium to become available again. This is the situation thatnecessitates use of TCMA, which relies on different arbitration times toprovide prioritized access to transmissions of different classification,followed by random backoff procedure to resolve medium contentionconflicts among transmissions of the same class.

Carrier sense shall be performed as in DCF. Because the time in whichthe CCA function can be completed is set at the minimum attainable forthe PHY specification, distinct priority treatment is achieved by AIFSlengths differing by at least one time slot. The slot duration, whichdepend on the PHY specification, is to allow enough time for a stationto sense the medium and determine whether it is busy. As a result UATdifferentiation alone provides for a single “high” priority class,further differentiation in priority access is pursued through differentbackoff time distributions.

Backward Compatibility and Hybrid TCMA

Backward compatibility with legacy 802.11 stations requires that atleast one priority class exist above legacy and that there be no accessconflict between the top priority class and the point coordinator of thePCF. Differentiation by the BCUT will not provide any classes withpriority above legacy if the present slot time is the shortestarbitration-time increment in which carrier sensing can be achieved. Asingle higher priority class is possible with pure BCPT-differentiatedTCMA, having the following attributes: UAT(0)=PIFS and minimum backoffvalue is 1. This class does not conflict with PCs since the latteraccess the channel at PIFS, while the former attempt access no earlierthan PIFS+1-DIFS. It is worth noting that restricting the startingbackoff value suffices in avoiding conflict with a PC since any nodewith backoff countdown interrupted due to a transmission would resumecountdown with a backoff value of at least 1. Had the backoff been 0,the node would have attempted transmission already. The contentionwindow from which this priority class draws random backoff delaysdepends on traffic load.

More classes with priority above legacy can be derived through furtherdifferentiation by the contention window CW. That is, AIFS(0)=PIFS andmin backoff≧1. Smaller CW sizes are used for higher-priority traffic.

Dynamic Variation of Urgency Classes

There are nPC priority classes defined for all traffic packets which arepermanently assigned to a packet once generated; nPC=8, according toIEEE 802.1d Annex H.2. A node may generate more than one type ofpackets. When a new packet is generated at a node, it joins the pool ofpackets waiting transmission (PWT). It is assigned an urgency class. Inthe most general embodiment of the invention, there are nUC urgencyclasses employed in contending for the channel. nPC and nUC are notequal; nUC is less than nPC and equal, for instance, to 4.

Unlike the assignment of a priority class to a transmission, and inorder to afford the greatest flexibility, urgency classification neednot be tied exclusively to the traffic type; it may vary in timeaccording to the performance parameters as they are observed in realtime. The capability to update the urgency class of a packet in realtime can be used to reflect both the priority class of the packet andthe order in which packets of different traffic classes and ages must betransmitted from a node. For instance, the scheduling algorithm willadvance packets with short remaining life to a higher urgency class. Forexample, an isochronous application packet would be placed in the bufferwith a lower urgency classification at first and then be upgraded to thesame urgency as a real-time application packet if its delay approaches acritical level. This provides a mechanism for flow adaptation in orderto meet reserved/negotiated QoS requirements.

Scheduling of Multiple Streams at a Station

An example of a station generating multiple traffic streams would be aPC receiving an audio-video stream and uploading data.

Packets generated by stations with multiple traffic types will not bedisadvantaged relative to packets from stations with a single type oftraffic because of a single contention point. Traffic generated byapplications on a single station is processes as if it were generated bydifferent stations each producing one type of frame.

Parallel queues shall be maintained within the node for each class, eachadhering to backoff principles consistent with that class. That is,backoff delays will be drawn from the statistical distribution of thatclass and backoff countdown will occur when the channel has been idlefor the duration of the UAT corresponding to that class. A separatebackoff time is maintained for each queue; each counter is decrementedindependently of other counters in the station. The only advantageenjoyed by different-priority frames generated by applications in thesame station is that they do not experience inter-queue collisions,something otherwise possible.

The queues will not be independent, however, as packets may changequeues when their classifications are adjusted; their position in thenew queue shall be determined by the Traffic Reclassification algorithm.The transmission of packets with excessive latency is cancelled, causinga packet to leave its queue prematurely. The limit, aAgeLimit, on thetransmit lifetime, which is time from arrival at the MAC tillcancellation of a packet will be class-dependent, as shown in Table 1,which lists the parameters differentiating the various urgency classes.

Each contending ESTA has access buffer of size 1. When a packet'sbackoff counter becomes 0, it shall be placed in the access buffer andattempt to seize the channel. In case of a tie, the access buffer packetwill be selected according to the urgency classification of the tiedpackets. The higher priority packet will be chosen. The packet notchosen shall follow the contention resolution procedure applicable toits class; namely, it will draw a new random backoff counter and engagein backoff countdown until its backoff counter expires. If transmissionof the chosen packet fails, it shall proceed in accordance with thecontention resolution procedure applicable to its class.

The above discussion shows that if an ESTA generates several types ofpackets, scheduling procedures internal to the ESTA will select thepacket to be transmitted. Thus, for simplicity of presentation, it isassumed in the ensuing discussion that at any point in time, an ESTA isconcerned with the transmission of packets of a single type.

Access Procedure

The TCMA multiple access method is the foundation of the enhanced DCF.Both the DCF and the E-DCF employ CSMA/CA, with certain enhancementsadded for the latter to enable differential treatment of packets withdifferent urgency classes. The operating rules differ between the DCFand the E-DCF in terms of the choice UAT, the backoff timer distributionparameters, and the retry update parameters. Table 1, above, lists thedifferentiating parameters for the different E-DCF classes.

UAT

The UAT (urgency arbitration time) is introduced to provide prioritylevel access to the wireless media by the enhanced-DCF for QoSmanagement purposes. The UAT is the time interval that the channel mustbe sensed idle by a node before decreasing its backoff counter. Incongestion, ordering of transmissions by their urgency classification isaccomplished by assigning shorter arbitration times to the more urgenttraffic and separation of contention by urgency class is achievedprovided that the UAT values for different urgency classes differ by atleast the time needed by the carrier-sense mechanism to determine thatthe medium is busy or idle.

The UAT shall be used by ESTAs operating under the enhanced-DCF totransmit data. An ESTA using the enhanced-DCF shall be allowed totransmit if its carrier-sense mechanism determines that the medium isidle at the end of the UAT interval after a correctly received frame,and its backoff time has expired.

E-DCF Backoff Counter Distribution

An ESTA desiring to initiate transfer of data under enhanced-DCF willproceed as under DCF with some differences. The period of time requiredof the medium to be idle without interruption, as determined by thecarrier-sense mechanism, is equal to UAT, a duration that depends on thedata classification. After this UAT medium idle time, the ESTA shallthen generate a random backoff counter, unless the backoff timer alreadycontains a nonzero value.

The random backoff counter will be drawn from a uniform distributionwith range (rLower,rUpper) where the backoff window size(rUpper-rLower), or equivalently its variance ((rUpper-rLower)**2)/2, isselected based on the traffic intensity in that class. The mean of thedistribution, which is equal to (rLower+rUpper)/2, will be chosen toreflect the traffic intensity in classes of greater urgency; higherintensity in classes of greater urgency would increase the mean of thebackoff counter distribution. Traffic intensity will be estimatedthrough the Traffic Intensity Estimation Procedure (TIEP) described inSection 4. The lower bound of the random backoff range, rLower, will begreater than or equal to 1 for the enhanced-DCF classes with UAT=PIFS sothat they do not collide with transmissions generated by the centralizedaccess protocol.

Backoff Countdown

The backoff countdown will proceed under the enhanced-DCF as under theDCF. The backoff countdown is started following a time interval duringwhich the medium is determined to be idle for the duration of the UATafter a transmission. The backoff counter is decreased by 1 for eachconsecutive time slot during which the medium continues to be idle.

If the medium is determined by the carrier-sense mechanism to be busy atany time during a backoff slot, then the backoff procedure is suspended;it is resumed again once the medium shall be determined to be idle forthe duration of UAT period. Transmission shall commence whenever thebackoff counter reaches zero.

It is important to recognize that the use by different urgency classesof UAT values different by aSlotTime minimizes the probability thatpackets from such classes will collide in congestion conditions; inconditions whereby several ESTAs have packets of higher classificationswith nearly expired backoff counters—that is, equal to 1—the possibilityof collision is eliminated. In such conditions, higher urgency packetswill be transmitted before lower urgency packets. One can note, in Table1, that this condition is met by the UAT of any of classes 1, 2, or 3and the UAT of class 4.

Backoff Distribution Adjustment Upon Retrial

If the transmission is not successful, the backoff distribution isaltered before the random backoff counter is chosen for retry. Thebackoff retry parameters determine how the backoff distributionparameters are adjusted on successive retries following transmissionfailure. The persistence factor (PF) is used to adjust the growth rateof the contention window CW size that is used upon transmission retrial.The DCF doubles the backoff range (the backoff counter assumes largervalues) following transmission failure. In other words, legacy stationsuse a PF=2 always, as binary exponential backoff implies doubling thewindow size after each collision. When there is no capability foradaptation to traffic, doubling the window provides a rough way toadjust CW size to congestion. A packet is transmitted quickly in lightpacket traffic, but its transmission can be delayed substantially incongestion conditions.

However, when an adaptation mechanism is available to adjust window sizeto traffic, doubling the retrial window causes too much delay/jitter.For any offered load, there will always be a non-zero probability ofcollision, even when using the optimal size contention window. When atraffic stream requires low delay jitter, the goal is to minimize anydeviation from the mean delay, which is better served if the delay isindependent of packet-arrival rates. In the event of such a collision, anode attempting retransmission should use a shorter backoff delay thanon its first, failed, attempt in order to reduce delay and jitter.Therefore, in cases where there is CW adaptation to traffic, the PFvalue should be <1. In general, the standard should allow flexiblepersistence factors.

The enhanced-DCF will employ a different discipline for differentclasses to adjust the backoff range when transmission fails. The newbackoff range, (aLower[y],aUpper[y]), will be determined by functionsthat depend on the packet's class, the traffic congestion estimates,which are derived by the Traffic Intensity Estimation Procedure (TIEP)discussed herein, and on the time spent by the packet waiting fortransmission. These functions depend on the sensitivity of the class todelay or delay jitter. PF can be different for different trafficclauses; a smaller PF value can be used for time-sensitive traffic, inorder to achieve lower delay and lower delay jitter. A persistencefactor, pf_(i), for each class i, will be used to multiply the backoffwindow from which backoff counters will be drawn randomly upontransmission retrial. Longer backoff ranges may be used initially fordelay jitter-sensitive traffic; and if transmission fails, contentionpersistence could be increased by shifting the backoff range to lowervalues for subsequent attempts. This will have the effect of postponingtransmission and reducing the competition for the channel by new packetarrivals, giving a better chance to aging packets to transmitsuccessfully. The overall delay jitter is thus minimized, making thisdiscipline a better choice for isochronous traffic.

Because of its tendency to reduce long delays, this reasoning will beused, in congestion conditions, to adjusting backoff ranges for retrialeven for real-time traffic, albeit delay sensitive.

EXAMPLE

The following example illustrates how the retrial backoff range can beadjusted to reflect traffic QoS characteristics. The rules for obtaininga new backoff range, (aLower[y],aUpper[y]), are the following:

-   -   with each retrial, keep aLower[y] fixed,    -   adjust aUpper[y] by increasing the contention window by a        persistence factor pW[y] that depends on the class y, while    -   imposing an upper bound CWmax[y]+1 on the contention window        size, which is class dependent.

Consider now two classes, one receiving voice (VO) packets that requirelatency not exceeding 10 ms, and the other receiving video (VI) packetswith a 100 ms maximum latency limit.

The following parameters are assigned to VO:

(The restriction to be no less than 1 is imposed on the lower bound ofthe backoff range in order to ensure backward compatibility with legacystations.)

UAT[VO]=PIFS

rLower[VO]=1

rUpper[VO]=15

pW[VO]=1

CWmax[VO]=15

The following parameters are assigned to VI:

UAT[VI]=PIFS

rLower[VI]=16

rUpper[VI]=31

pW[VI]=2

CWmax[VI]=127

Table 3 shows for these two classes the backoff ranges from which arandom counter will be drawn on repeated transmission attempts. TABLE 3Backoff distribution parameters for consecutive transmission attemptsTransmission Attempt Class[VO] Class[VI] 1 [1, 15] [16, 31] 2 [1, 15][16, 47] 3 [1, 15] [16, 79] 4 [1, 15] [16, 143] 5 [1, 15] [16, 143]

Because of its tendency to reduce long delays, this reasoning can beused, in congestion conditions, to adjusting backoff ranges for retrialeven for real-time traffic, albeit delay sensitive.

MSDU-Lifetime Limits

MAC dwell-time is the time spent by a frame in the MAC layer. With thepresent standard that time could be excessive as no restriction isapplied. The only restriction imposed currently is on the portion of thedelay occurring after a packet reaches the queue head. Time-boundedtraffic is obsolete if it does not get to the recipient within a narrowwindow of time. As a result, excessively delayed frames, which willeventually be discarded by their application for excess delay, shouldnot contend for the medium, causing delay to other frames. Now, an agelimit leads to the cancellation of a transmission if the time sincearrival at the MAC layer exceeds a threshold value. A limit is imposedon the MAC-layer dwell-time, MSDU Lifetime, which causes delayed MSDUs[all fragments] to be discarded. A benefit is that the result is reducedoffered load, contention, and delay both within the same class where thelimits are placed and in other classes. There is a differentiation bytraffic category since time-sensitive applications use shorter MSDUlifetime limits.

Congestion-Adaptive, Traffic-Specific Backoff

Because it is desirable to adapt to congestion conditions in order toavoid collision in congestion and reduce the idle time in low trafficintensity, adaptation of the backoff counter to traffic intensity ispursued. It can occur at different time scales: (1) upon transmission ofthe packet; (2) upon transmission retrial; and (3) continuously (orwhenever there is a change in traffic intensity exceeding a thresholdvalue).

The backoff counter is drawn from a traffic-adjusted distribution thefirst time a packet seeks to seize the channel; the same holds whenre-transmission is attempted following a collision. If theauto-correlation exhibited in bursty traffic suggests that adaptationoccur in a finer scale, the backoff counter value is adjusted to trafficvariation through scaling.

Upon arrival, or upon transmission retrial, if needed, a node with apacket waiting for transmission draws a backoff counter value from atraffic-adapted backoff distribution. After every silent time slot, apacket's counter is decreased and transmission is attempted uponexpiration of the counter, according to the conventional procedure. Ifat a given time slot the traffic intensity changes, the backoff counteris scaled up or down, depending on the direction of the traffic change,as follows.

If the traffic intensity increases, then the backoff counter isincreased relative to its current value. A random increment is selectedfrom a range (0, R), where R depends on the traffic intensity change;the increment is added to the current counter value. Countdown thenproceeds as before. By drawing the increment randomly, variation isintroduced to the new counter values of packets that had equal countervalues previously (and heading for collision), thus helping avoidcollision. This way, the relative order in which pending packets willtransmit is preserved and preference for transmission is given to olderpackets.

If the traffic intensity decreases, decreasing the backoff countervalues prevents long idle channel intervals. In order to preserve therelative time ordering of packets, a random decrement that is selectedfrom a range (0, R), which depends on the traffic intensity change, isnow subtracted from the current counter value.

By preserving the order in which pending packets will transmit, the ageof a packet is respected by the backoff approach while at the same timeallowing for quick adaptation to traffic variation. Thus it is morelikely for older packets to seize the medium before newer ones, hencekeeping the latency jitter low.

Adaptation to Traffic Congestion

Consistent with the notion that the Distributed Coordination Functioncould remain distributed, adaptation of the backoff distributionparameters (mean and variance) will be performed in a decentralizedmanner, although centralized adaptation is equally feasible.

The nodes will estimate the traffic intensity from feedback informationthat includes: whether an attempted transmission succeeded or failed,the number of failed transmission attempts and the idle time spentwaiting for transmission. For the latter, each node includes in themessages exchanged during reservation and/or in the packet headers thenumber of the retrial attempts and the time since arrival of the packetat the source node. The broadcast information will be class specific,from which class-specific traffic intensity estimates will be derivedand class-specific backoff counter ranges shall be estimated.

When a node receives these messages, it will combine them with its owninformation to assess the level of congestion by the Traffic IntensityEstimation Procedure (TIEP) and select its initial backoff windowaccordingly. The adjustment of the backoff counter distributionparameters to traffic intensity shall be such that high congestion in anurgency class would increase the variance of the backoff-counterdistribution, while higher intensity in classes of greater urgency wouldincrease the mean of the backoff counter distribution.

The availability of class-specific traffic estimates will make itpossible to start with a backoff counter appropriate for the trafficintensity at hand, and retry upon failure with properly adjusted andsuccessively smaller backoff counters in order to increase thepersistence of aging packets.

Arbitration Through Backoff-Counter Update Time (BCUT) DifferentiationAssume that arbitration is achieved through different values ofbackoff-counter update time (BCUT), the time that a channel must be idlefor the backoff counter to be decreased. Assume here that the value ofbackoff-counter preparation time (BCPT) is equal to 0 for all urgencyclasses. Suppose the different BCUT values are given by the formulaUAT _(i) ¹ =h ¹+(i−1)·d  (1)

where UAT_(i) ¹ is the urgency arbitration time for class index i, andh¹ and d¹ are two positive numbers. Suppose that after the successfulreception of a transmitted packet, a lower urgency packet has a shorterremaining backoff counter, m′<m. In low congestion, low priority packetsmay be transmitted before high priority packets, but collision by packetof different urgency classes can always be avoided.

In order to avoid collisions it is important to ensure that the timetill expiration of the backoff counter following the completion of atransmission is not equal for two packets of different classification.The following must hold:m·(h ¹ +ld ¹)≠m′·(h ¹ +l′d ¹)  (2)

for all possible values (m, m′, l, l′), where l′≡i′−1 and l≡i−1. If thevalues of h¹ and d¹ are selected arbitrarily, the situations wherecollisions may be possible are described by the combination of values(m, m′, l, l′) such thatl′>l,m′=1, . . . ,N;m=m′+1, . . . ,N;l=0, . . . ,C−1;l′=l+1, . . . ,C−1

where N is the maximum backoff counter value and C is the number ofdifferent classes. Equivalently, it is sufficient to have the followingcondition met: $\begin{matrix}{\frac{d^{1}}{h^{1}} \neq \frac{m - m^{\prime}}{{m^{\prime}l^{\prime}} - {m\quad l}} \equiv q} & (3)\end{matrix}$

Since N and C are bounded integers, the possible values of q that mustbe avoided comprise a countable and finite set. Hence, collisionsbetween packets of different packets can be avoided by the proper choiceof q.

Example: Suppose N=4 and C=2. Table 4 below lists the q value for allcombinations of (m, m′, l, l′) that would be of concern. If h¹ and d¹are selected so that their ration is not equal to these values of q,collision between urgency classes is avoided. TABLE 4 Arbitrationthrough proper differentiation of BCUT q m m′ l l′ 1 2 1 0 1 2 3 1 0 1 34 1 0 1 ½ 3 2 0 1 1 4 2 0 1 ⅓ 4 3 0 1

Arbitration Through Backoff-Counter Preparation Time BCPTDifferentiation

Assume that arbitration is achieved through different values of BCPT,the time that a channel must be idle immediately following atransmission, before the backoff count down process is engaged. Assumehere that the value of BCUT is equal to t, the same for all urgencyclasses. Suppose the different BCPT values are given by the formulaUAT _(i) ⁰ =h ⁰+(i−1)·d ⁰  (4)

where UAT_(i) ⁰ is the urgency arbitration time for class index i, andh⁰ and d⁰ are two positive numbers.

In order to avoid collisions, it is important to ensure that thefollowing holds:m·t+(h ⁰ +ld ⁰)≠m′·t+(h ⁰ +l′d ⁰)  (5)

for all possible values (m, m′, l, l′), l′≡i′−1, and i≡i−1. If the valueof d⁰ were selected arbitrarily, the situations where collisions may bepossible are described by the combination of values (m, m′, l, l′) suchthatl′>l,m′=1, . . . ,N;m=m′+1, . . . ,N;l=0, . . . ,C−1;l′=l+1, . . . ,C−1

where N is the maximum backoff counter value and C is the number ofdifferent classes. Equivalently, it is sufficient to have the followingcondition met: $\begin{matrix}{\frac{d^{0}}{t} \neq \frac{m - m^{\prime}}{l^{\prime} - l} \equiv z} & (6)\end{matrix}$

As above, since N and C are bounded integers, the possible values of zthat must be avoided comprise a countable and finite set. Hence,collisions between packets of different packets can be avoided byselecting the ratio to d over t not to equal any of the values of z.

Example: Suppose N=4 and C=2. Table 5 below lists the z value for allcombinations of (m, m′, l, l′) that would be of concern. If d⁰ and t areselected so that their ratio is not equal to these values of z,collision between urgency classes is avoided. TABLE 5 Arbitrationthrough proper differentiation of BCPT z m m′ l l′ 1 2 1 0 1 2 3 1 0 1 34 1 0 1 1 3 2 0 1 2 4 2 0 1 1 4 3 0 1

Arbitration Through Both BCUT And BCPT Differentiation

Assume that arbitration is achieved through different values of BCUT andBCPT. Suppose the different BCUT and BCPT values are given by formulas(1) and (4), respectively.

In order to avoid collisions, it is important to ensure that the timetill expiration of the backoff counter following the completion of atransmission is not equal for two packets of different classification.The following must hold:m·(h ¹ +ld ¹)+(h ⁰ +ld ⁰)≠m′·(h ¹ +l′d ¹)+(h ⁰ +l′d ⁰)  (7)

for all possible values (m, m′, l, l′), l′≡i′−1, and l≡i−1. If thevalues of h¹,d¹, and d⁰ were selected arbitrarily, the situations wherecollisions may be possible are by the combination of values (m, m′, l,l′) such thatl′>l,m′=1, . . . , N;m=m′+1, . . . , N;l=0, . . . ,C−1;l′=1, . . . ,C−1

where N is the maximum backoff counter value and C is the number ofdifferent classes. Equivalently, it is sufficient to avoid values of(h¹,d¹,d⁰) that satisfy the condition: $\begin{matrix}{h^{1} = {\frac{d^{0}}{z} + \frac{d^{1}}{q}}} & (8)\end{matrix}$

where z and q are as defined in conditions (6) and (3), respectively.Since N and C are bounded integers, the possible values of h¹ that mustbe avoided comprise a countable and finite set, given a choice of(d¹,d⁰). Hence, collisions between packets of different packets can beavoided by selecting the values of h¹ that are not in this set.

Example: Suppose N=4 and C=2. Table 6 below lists the values of h¹ forall combinations of (m, m′, l, l′) that would be of concern for a given(d¹,d⁰) values, say d⁰=1 and d¹=1. If h¹ is selected so that thesevalues are avoided, collision between urgency classes is prevented.TABLE 6 Arbitration through proper differentiation of BCUT and BCPT h¹ mm′ l l′ 2 2 1 0 1 1 3 1 0 1 ⅔ 4 1 0 1 3 3 2 0 1 3/2 4 2 0 1 4 4 3 0 1

Performance of TCMA

A simulation description is shown in FIG. 9.

The BSS consists of 10 bi-directional streams; 9 are voice calls and oneis a very bursty high load of priority data. A DSSS channel isconsidered; it transmits at a 11 Mbps data rate. All nodes have a buffersize of 2.024 Mbits. The load increases as calls come on; the start ofeach call is portrayed.

Average delay by traffic category is shown in FIGS. 10A to 10D.

The TCMA protocol was simulated for two scenarios: (1) with the currentDCF protocol and (2) with TCMA using two AIFS-differentiated priorityclasses. The contention window CW size was 32 both classes. The averagedelay is plotted for both priority classes. It decreased for bothclasses because of contention partitioning caused when TCMA was applied;it decreased significantly for the top-priority class.

Delay and jitter for a single call shown in FIGS. 10E to 10H.

For the same simulation, the delay and jitter are plotted for a singlevoice call (top-priority class). Both decreased significantly with TCMA.

Flexible Persistence Factors

Average delay by traffic category is shown in FIGS. 11A and 11B. TCMA(AIFS Differentiation) cwmin(0)=32 is shown in FIGS. 11C, 11D. TCMA withpersistence Factors: (0.5, 2) is shown in FIGS. 11E, 11F. The TCMAprotocol was simulated with flexible persistence factors. First, thecontention window CW size was increased for the top-priority class from32 to 64 in order to better accommodate the contention in that class. Atthe same time the PF value for that class was set at 0.5. The plots showthat the average delay decreased significantly for the top-prioritytraffic.

Delay and jitter for a single call is shown in FIGS. 12A, 12B. TCMA(AIFS Differentiation) cwmin(0)=32 is shown in FIGS. 12C, 12D. TCMA withPersistence Factors: (0.5, 2) is shown in FIGS. 12E and 12F.

For the same simulation, the delay and jitter are plotted for a singlevoice call (top-priority class). Both decreased significantly for thesmaller persistence factor and wider contention window.

MSDU-Lifetime Limits

Obsolete frames [MAC dwell time>20 ms] are shown in FIGS. 13A and 13B.Delay and jitter for a single call (sec) is shown in FIGS. 13C and 13D.The TCMA protocol was simulated with a restricted MSDULifetime of 20milliseconds, applied only to the top priority class. This scenario,shown to the right, is compared to the scenario to the left, where noframes are dropped. On top is shown the percent obsolete frames. In thefirst scenario, these are the frames that are delayed by 20 ms, orlonger. To the left is plotted the frames dropped because theyexperience delays greater than or equal to 20 ms. It is seen that thepercent obsolescence is lower in the second scenario because the channelis cleared of delayed packets. At the bottom is shown the delay andjitter for a single call. Both delay and jitter are reducedsubstantially.

Generalizations of TCMA

There are several extensions of the TCMA concept that apply to othermedia and standards. With CSMA/CA, if the channel is busy, the node willbackoff by waiting a priority differential delay—the backoff delay. Thisdelay is counted down during a period BCUT (backoff countdown updatetime). This time interval must be preceded by an idle period BCPT(arbitration time inter frame space). BCPT is exactly equivalent to theUAT. Either or both BCPT and BCUT is class differentiated. Shorterlengths correspond to higher priority packets.

In p-Persistent CSMA

Another way backoff is effected is through the use of a persistenceprobability. Waiting for permission to transmit with a specifiedpersistence probability is equivalent to selecting a backoff countervalue randomly for a specified distribution. For a fixed persistenceprobability value, this distribution is the geometric. Given apersistence probability value (like the starting contention window withbackoff), the transmission of the frame is attempted if the channel issensed and found idle for a time slot and a random number generatordetermines whether permission is granted to transmit. The persistenceprobability may be decreased in response to collisions.

As in the case of the backoff counter, a different length arbitrationtime is defined for each priority class; the arbitration time is shorterfor frames of higher priority. When a node has a pending frame, itdetermines the frame's priority class first; the priority class is thenmapped into an arbitration time. Two types of arbitration times arepossible: AIFS and BCUT. Following a transmission, if the channelbecomes idle for the duration of the AIFS, the node checks forpermission to transmit. If permission is denied, the node waits foranother idle interval equal to the BCUT and checks for permission totransmit again. Transmission occurs if the channel remains idle for aBUCT interval once permission is granted. Priority differentiation canbe achieved by using different AIFS values, different BCUT values, or bydifferentiating in terms of both BCPT and BCUT values.

One can generate several urgency classes for packets assigned the sameurgency arbitration time by using different persistence probabilityvalues. A higher probability value is used for higher urgency packets.

In CSMA/CD

In other media, such as cable, nodes can transmit and receive at once.This enables the early detection of a collision, at which timetransmission of the frame is cancelled. From the perspective of seeinghow transmission prioritization can be effected through the UAT, one canview the ‘head’ of the frame as reserving the medium by contention forthe remainder of the frame. Either p-persistent CSMA or CSMA/CA can beused by the frame heads to contend. Hence, UAT prioritization applies asdiscussed previously.

In ALOHA

When variable size packets are involved, sensing the medium is helpfulin avoiding collisions. A new packet will be transmitted only if thechannel is idle. In Aloha, there is no carrier sensing. New frames aretransmitted immediately upon arrival without knowledge of the state(busy/idle) of the medium. If collision occurs, the node knows at theend of the transmission. A random number of slots will elapse beforetransmission is attempted again. The stations are referred to asbacklogged stations. To prioritize ALOHA, a collided packet will betransmitted by waiting a priority differentiated delay which is selectedrandomly—the QoS delay (QD). The range from which QD will be drawndepends on the traffic class. There is a minimum delay Qdminand there isthe window size QDW. Higher priority traffic is assigned lower QDvalues; Qdmin=0 for the highest priority traffic.

In Slotted ALOHA

Slotted Aloha can be applied in a special case of traffic where packetsare fixed in size and transmissions are synchronized. In that case, thestate of the medium is not relevant to the fate of a new arrival. Theslot time is equal to the time it takes to transmit a packet. (Theunslotted Aloha allows for transmission anytime). Each station attemptstransmission immediately upon arrival of the packet If two stationscollide, the stations will postpone transmission, selecting anothertransmit slot randomly. Prioritized (slotted) Aloha can follow the samedifferentiation as described above.

Although a specific embodiment has been disclosed, it will be understoodby those skilled in the art that changes can be made to that specificembodiment without departing from the spirit and scope of the invention.

1. A method for a distributed medium access protocol, comprising:scheduling transmission of different types of packets on a sharedchannel; and including information in the transmitted packets concerningthe number of transmission attempts.
 2. A method for a distributedmedium access protocol, comprising: scheduling transmission of differenttypes of packets on a shared channel; and including information in thetransmitted packets concerning the time spent by the packet waitingtransmission.
 3. The method for a distributed medium access protocol ofclaim 1, which further comprises: differentiating packets into differenturgency classes based on different backoff distributions for differentpackets that are assigned a same urgency arbitration time.
 4. The methodfor a distributed medium access protocol of claim 3, which furthercomprises: further differentiating packets into different urgencyclasses based on different backoff distributions for different packetsthat are assigned the same urgency arbitration time.
 5. A method for adistributed medium access protocol that schedules transmission ofdifferent types of packets on a channel based on a service qualityspecification for each type of packet, comprising the steps of:determining at a plurality of nodes in the access network, an urgencyclass of pending packets according to a scheduling algorithm; and usingclass-differentiated time limits that lead to a packet being droppedonce the time spent by a packet waiting for transmission has exceededthat limit.
 6. A method for a distributed medium access protocol thatschedules transmission of different types of packets on a channel basedon a service quality specification for each type of packet, comprisingthe steps of: determining at a plurality of nodes in the access network,an urgency class of pending packets according to a scheduling algorithm;and using class-differentiated retrial functions that are used to updateparameters of backoff distribution used following transmission failureand subsequent transmission retrial.